Javascript Vue.js将对象发送到父组件
我很难弄清楚为什么我不能在父组件中侦听来自子组件的更改 我有一个自定义的Javascript Vue.js将对象发送到父组件,javascript,vue.js,components,emit,Javascript,Vue.js,Components,Emit,我很难弄清楚为什么我不能在父组件中侦听来自子组件的更改 我有一个自定义的组件,其中包含多个输入字段,用户可以输入如下地址: <v-text-field v-model="address.address_line_1" label="Street Address" required @change="inputChanged"> </v-text-field> 每次更改输入字段时,我都希望将整个address对象发送到父组件 当我在inputChanged
组件,其中包含多个输入字段,用户可以输入如下地址:
<v-text-field
v-model="address.address_line_1"
label="Street Address"
required
@change="inputChanged">
</v-text-field>
每次更改输入字段时,我都希望将整个address对象发送到父组件
当我在inputChanged()
方法中console.log(this.address)
时,我得到了包含所有可用值的正确对象
我现在要发射对象,如下所示:
此.emit('address:change',this.address')
使用vue devtools,我可以获得正确的发射:
在父组件中,我监听
组件中的更改
在父组件中,我尝试输出这些更改:
methods: {
...mapActions([
'setE6',
]),
changeAddress(value, event) {
console.log(value);
}
}
当我看我的控制台时,我完全没有得到任何输出。即使在该函数中硬编码字符串也不会返回任何结果
我做错了什么 我发现了由我的错误引起的错误
我将事件侦听器添加到了错误的父组件。可能是使用
:
与使用:
传递数据(如:prop=“value”
)产生了一些语法冲突。你可以尝试使用不同的字符,或者完全不使用字符吗?我尝试了普通的烤肉串,但没有用。你能发布复制品吗?很高兴你找到了解决问题的方法:)
methods: {
...mapActions([
'setE6',
]),
changeAddress(value, event) {
console.log(value);
}
}