v-model绑定引用类型props的属性是否合理?
vue2中
假如有三个组件,父组件,子组件,和孙组件。父组件中有这么一个值
const detail = { input1: 111,
child: {
input2: 2222
}
}
将这个值传给了子组件,子组件又传给孙组件。
子组件中有一个输入框v-model="detail.input1"
孙组件中有一个输入框v-model="detail.child.input2"
然后在父组件中有个保存按钮,点击保存后要将新的detail
发送出去。
问题如下:
首先,这么写是不会报错,也没有警告的,数据也都正常同步。但是,毕竟这种模式违背了单向数据流的原则,所以是否不该这么写。
假如不推荐这么写,有应该用什么思路来实现上面代码的效果呢。
回答:
个人觉得这样写没问题。
而且我认为也没有违反单向数据流吧,子组件和孙组件都是接收一个 detail,只是他们关注的字段不同而已。修改时也是依次向上传递,最后达到父组件的。
回答:
用sync
修饰,vue3
去除了,改成了v-model:prop
的形式,具体看文档
https://v2.cn.vuejs.org/v2/guide/components-custom-events.htm...修饰符
https://cn.vuejs.org/guide/components/v-model.html#v-model-ar...
以上是 v-model绑定引用类型props的属性是否合理? 的全部内容, 来源链接: utcz.com/p/934638.html