好像2.0之后props里面的属性就不能在组件内部改变值了,只能通过外部传入,但是有时候组件内部也需要修改这个值并反应给父组件要怎么做呢。
2.x 是推荐单向数据流而不是双向绑定的, 如果父组件需要子组件在某个时机修改值, 可以选择通过props传递一个回调函数给子组件, 让其在指定时机触发, 回调函数的内容由父组件决定, 比如更新你想要的那个值
@yinxin630 除了这种方式,有没有更好的,比如我不用prop,用其他的,因为回调太多也是麻烦事
@FlyerJay event bus或者vuex
来自酷炫的 CNodeMD
试试 v-model 语法糖
v-model
value
this.$emit('input', newValue)
除了event bus或者vuex,还有两种方法 1.参数object形式,修改object时,vue会认为对象地址没变,从而对象就没有改变,完美避开了双向绑定 2.采用内部data控制,参数改变时,用watch同步data,在子组件内部,形成伪双向绑定效果
CNode 社区为国内最专业的 Node.js 开源技术社区,致力于 Node.js 的技术研究。
2.x 是推荐单向数据流而不是双向绑定的, 如果父组件需要子组件在某个时机修改值, 可以选择通过props传递一个回调函数给子组件, 让其在指定时机触发, 回调函数的内容由父组件决定, 比如更新你想要的那个值
@yinxin630 除了这种方式,有没有更好的,比如我不用prop,用其他的,因为回调太多也是麻烦事
@FlyerJay event bus或者vuex
来自酷炫的 CNodeMD
试试
v-model语法糖v-modelvalue接收参数this.$emit('input', newValue)同步v-model的值除了event bus或者vuex,还有两种方法 1.参数object形式,修改object时,vue会认为对象地址没变,从而对象就没有改变,完美避开了双向绑定 2.采用内部data控制,参数改变时,用watch同步data,在子组件内部,形成伪双向绑定效果