Vue中是通过事件发射的方式来实现子传父的效果的
在子组件中,使用this.$ emit("键名","键值")。
在父组件中的子组件标签中使用@键名="vue属性名=$event" 来获取子组 件传递过来的值。
代码如下:
子组件:
<button type="button" @click="dw">点我</button>
methods:{
dw(){
this.$emit('ChangeTitle','你好世界!')
}
}
父组件 :
<myContent :title='msg' @ChangeTitle="msg=$event" ></myContent>
字组件props中定义的title原本在子组件中是没有初始值的,在父组件中通过父传子的方法用msg给子组件传递一个初始数据,然后给子组件绑定一个事件,例如点击dw按钮时触发dw函数,调用$emit方法创建一个值名和值参发射到子组件外部,父组件通过@子组件发射的值名用= $event获取子组件传递出来的参数赋予msg,再把修改后的msg内容传给子组件显示。