首页 > Web开发 > 详细

vuejs子组件向父组件传递数据

时间:2017-03-26 01:05:14      阅读:316      评论:0      收藏:0      [点我收藏+]

 子组件通过$emit方法向父组件发送数据,子组件在父组件的模板中,通过自定义事件接收到数据,并通过自定义函数操作数据

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script type="text/javascript" src="vue.js"></script>
</head>
<body>
    <!-- 子组件向父组件传递数据 -->
    <div id="box">
        <v-parent></v-parent>
    </div>

    <!-- 父组件模板 -->
    <template id="parent">
        <div>
            <span>{{msgParent}}</span>
            <v-child @child-info="get"></v-child>
        </div>
    </template>

    <!-- 子组件模板 -->
    <template id="child">
        <div>
            <button @click="send">send</button>
            <!-- <p>{{msgChild}}</p> -->
        </div>
    </template>
    <script type="text/javascript">
        var app = new Vue({
            el:#box,
            components:{
                // 父组件
                v-parent:{    
                    data() {
                        return {
                            msgParent:hello
                        }
                    },
                    template:#parent,
                    methods:{
                        get(msg){
                            this.msgParent = msg 
                        }
                    },
                    // 子组件
                    components:{
                        v-child:{            
                            data(){
                                return {
                                    msgChild:child
                                }
                            },
                            template:#child,
                            methods:{
                                send(){
                                    this.$emit(child-info,this.msgChild)
                                }
                            }
                        }
                    }
                }
            }
        })
    </script>
</body>
</html>

此时点击子组件模板中的按钮,父模板中的子组件会接受到数据

vuejs子组件向父组件传递数据

原文:http://www.cnblogs.com/yesyes/p/6619082.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!