vue子组件向父组件传值

2019-05-28  本文已影响0人  关耳木南
  <body>
    <!-- 1、在父组件中的methods中定义一个方法,在使用的子组件标签中v-click一个自定义的
    组件中的方法。
    2、在子组件中也v-click一个方法。在子组件的methods中去定义。子组件中的方法里利用
    this.$emit去触发子组件标签中定义的属性,后面跟着的是子组件传给父组件的数据。 -->
    <div id="app">
      父亲:{{money}}
      <!--@child-msg(属于儿子)='add'(属于父亲)相当于 child.$on('child-msg',add)-->
      <child :m='money' @child-msg='add'></child>
    </div>
    <script src="https://unpkg.com/vue/dist/vue.js"></script>
    <script>
      var vm = new Vue({
            el:"#app",
            data:{  money:400  },
            methods:{
              add(val){
                this.money = val;
              }},
            components:{
              child:{
                props:["m"],
                template:"<div>儿子:{{m}}<button @click='getMoney()'>加钱</button></div>",
                methods:{
                  getMoney(){
                    this.$emit("child-msg",800)  // 触发自己的自定义事件,让父亲的方法执行
                  }
                }
              }
            }
          })
        </script>
  </body>
上一篇下一篇

猜你喜欢

热点阅读