Vue子组件向父组件传参

子组件传参给父组件

1.在子组件data中定义要传给父组件的参数

  data () {
    return{
      msg1: '子组件传给父组件1',
      msg2: '子组件传给父组件2'
    };
  }

2.在子组件中中建一个按钮,给按钮绑定一个点击事件

这里使用了其他封装的内容,只使用vue如下所示:

  <div>
    <button @click="sendTofather">子组件按钮</button>
  </div>

3.(子组件)在该函数中使用$emit来触发一个自定义事件,并传递一个参数

  methods: {
    sendTofather () {
      var msg = {};
      msg.msg1 = this.msg1;
      msg.msg2 = this.msg2;
      this.$emit('msgFormSon', msg);//只能传一个参数或者集合
    }
  }

4.在父组件中调用子组件,并在components中注册

import zizuj2 from '../component/zizujian2';
export default {
  components: {
    zizuj2
  }
}

 

5.在父组件中引用子组件,在子组件标签上绑定对自定义事件的监听(msgFormSon不可以写为msg-formSon)

<zizuj2 @msgFormSon="dataFormSon"></zizuj2>

6.创建回调方法dataFormSon(),接收子组件传的参数

  methods: {
    dataFormSon(data) {
      //回调方法,接收子组件传的参数
      console.log(data);
      this.msg = data;
      alert(this.msg.msg2);
    }
  }

整理一遍流程:

1.在子组件data中定义要传给父组件的参数

2.在子组件中中建一个按钮,给按钮绑定一个点击事件

3.(子组件)在该函数中使用$emit来触发一个自定义事件,并传递一个参数

4.在父组件中调用子组件,并在components中注册

5.在父组件中引用子组件,在子组件标签上绑定对自定义事件的监听(msgFormSon不可以写为msg-formSon)

6.创建回调方法dataFormSon(),接收子组件传的参数

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值