2018-09-21 vue初学八(组件子传父)

最简单的子传父组件

子传父 用事件传,这个事件是自定义事件 用$emit("事件",参数)来表示

 <div id="app">
    <my-father></my-father>
 </div>
<script src="js/vue.js"></script>
<script>
    Vue.component("my-father",{
        template:`
                <div>
                    <h1>我是父组件</h1>
                    <span>这里是内容:</span>
                    <a href="#">{{msgg}}</a>
                    <my-child @send="fun2"></my-child> 
                    //绑定了子组件中的send事件,并将fun2的内容赋给send,点击将触发
                </div>
            `,
        data:function(){ //定义一个假的数据,在下面赋值用
            return{
                msgg:""
            }
        },
        methods:{
            fun2:function(tex){ //形参
                this.msgg=tex
            }
        }
    })
    Vue.component("my-child",{
        template:`
        <div>
                <h1>我是子组件</h1>
                <input type="text" v-model="msg">
                <button @click="fun">添加进去</button>
         </div>
            `,
        data:function(){
            return{
                msg:""
            }
        },
        methods:{
            fun:function(){
                this.$emit("send",this.msg); //这里的this.msg当成实参传给上面的形参
                this.msg=""
            }
        }
    })
    new Vue({
        el:"#app"
    })
</script>
QQ截图20180921190754.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容