组件上的计算值设置器

时间:2015-06-20 14:43:26

标签: ractivejs

参考:http://jsfiddle.net/xwLk2vb0/

{1}

我无法理解为什么最后一行没有在'名称'上调用setter?计算属性,然后更新渲染的模板。请有人提供任何见解。

提前致谢

1 个答案:

答案 0 :(得分:1)

简短的回答是,计算出的属性是拥有的'由他们所居住的组成部分;你不能通过他们的父母与他们互动。我写了一些关于为什么是here的情况 - 它并没有完全描述你的情况,但事实是Person组件之间没有映射。 #39; s name,以及与之相关的对象的name属性。 name被有效地遮蔽了。

这是一件好事,因为它使代码更容易理解和推理 - 如果一个对象填充了额外的值只是因为它们与组件上的计算属性一致(即people中的每个对象数组会突然得到一个name: 'nameless'属性,你可能很容易陷入脑力弯曲状态,试图找出应用程序中某些数据的来源。

因此,解决方案是拥有一个代理服务器'计算属性,作为真实name属性的访问者,如:http://jsfiddle.net/muoz44ec/。请注意,我们会明确将组件内的name与人员对象上的this.name相关联。