这是我的代码过程,虽然已经实现了双向绑定,但是当通过子组件改变数据时,浏览器就会报错。
由于是图片,没法复制代码,大概这样解决:
<my-item v-model="value"></my-item>
Vue.component('my-item',{
template: '<input v-model="nozzle">',
props: ['value'],
computed: {
nozzle: {
get() {
return this.value
},
set(nozzle) {
this.$emit('input',nozzle)
}
}
}
})
父级不用监听事件了,文档地址:https://cn.vuejs.org/v2/guide/components.html#使用自定义事件的表单输入组件
11 回答1.3k 阅读
4 回答582 阅读✓ 已解决
3 回答856 阅读
1 回答851 阅读✓ 已解决
1 回答1.1k 阅读
2 回答773 阅读
1 回答899 阅读✓ 已解决
v-model='nozzle'是不对的,在子组件里你不要试图改变传入的属性值。
子组件的属性值是只读的。