【发布时间】:2013-10-07 20:26:32
【问题描述】:
我目前正在从事一个 Ember 项目,在该项目中,我在 Route 的 model 函数中获取复杂的 JSON 响应。在相应的模板中,我显示了响应的属性。对于其中一些,有一些可用的操作会导致此模型发生变化。
我希望使用 Ember 的绑定将这些更改直接反映在 UI 中。不幸的是,虽然使用this.get('attributeFromJson') 访问ObjectController 中的顶级响应属性效果很好,但在其中一个子属性上尝试相同(或set)不起作用。
我制作了以下 JSFiddle 来演示该问题:http://jsfiddle.net/KkD6U/
我的理解是,我需要手动将响应转换为Ember.Object,以便从其Ember.Observable mixin 中受益。
我的问题是:是否有任何简单的 Ember 方法可以自动将整个 JSON 响应“深度包装”到 Ember.Object 的结构中,以便在整个响应中使用 get 和 set?执行此操作的简单 Ember 方法是什么?
更新:
同时,我构建了一个简单的函数来将普通的 JS 对象转换为 Ember 对象,请参见此处的 jsFiddle:http://jsfiddle.net/5vEcL/1/
看起来可行吗?
【问题讨论】:
标签: javascript json ember.js