【发布时间】:2016-05-13 14:52:36
【问题描述】:
我正在尝试在init 生命周期挂钩处为我的一个组件分配默认值;以防从父组件传递未定义的值。最初一切似乎都按预期工作。但是,当我的组件被强制重新渲染时(可能通过父组件的另一个属性值更新);父组件的未定义值被写回我的组件。
这意味着;我在初始化时所做的赋值并没有反映到父组件,也就是说双向绑定暂时不起作用(父子组件的值不同步)。这是预期的行为还是我错过了什么。对 init 事件重要吗?初始化组件的未定义值的合适位置在哪里?请参阅twiddle 以获取简单说明。
【问题讨论】:
-
问题是当我点击按钮“名称”消失。对吗?
-
在某种程度上是的。问题是即使我在子组件的
init钩子中设置了 name 属性;该值不会通过与父组件的双向绑定反映出来,并且在下一次重新渲染中,组件的未定义值被写回子组件并且该值消失。 See what happens 以防代码从init移动到didReceiveAttrs。