子向父传递参数
利用 子组件 中的 $meit 属性
,注册事件,然后在 父组件 中,使用 $meit 定义的方法,在 父组件 中绑定事件;我们触发 子组件 的绑定 $meit 事件,就会 触发 父组件中的数据;
如果,再利用 $meit 的第二个属性,传递 子组件 的参数,过去 父组件中;
$emit 语法:
$emit('绑定的事件',传递的数据)
1. 在页面元素上绑定事件(常用:
1,在 子组件 中使用 $meit () 来传递给 父组件;
<button @click="$emit('childFn', 123)">子组件按钮</button>
如果,在 函数 中调用 e m i t , 要 使 用 t h i s . emit ,要使用 this. emit,要使用this.emit
methods: {
xxx: {
this.$emit('childFn', 123)
}
}
2,在 父组件 中的 子组件占位标签 上,使用 子组件 中 $emit 定义的 ‘方法’,来 调用事件(他们类似 click 等方法;
<router-view @childFn="fn"/>
调用 父组件中的 fn 事件;
3,在 父组件 中定义 fn 事件:
methods: {
fn (data) {
// data 就是子组件传递过来的参数;
console.log('触发函数' + data)