- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
浏览 Ember.js 文档,我无法弄清楚如何创建嵌套模型。假设我有以下 JSON:
App.jsonObject = {
id: 1812,
name: 'Brokerage Account',
positions: [
{
symbol: 'AAPL',
quantity: '300'
},
{
symbol: 'GOOG',
quantity: '500'
}
]
}
如果我创建一个像这样的模型对象
App.account = Ember.Object.create(App.jsonObject);
只有顶级属性(id 和 name)绑定(bind)到模板,嵌套位置数组未正确绑定(bind)。因此,添加、删除或更新位置不会影响显示。是否有手动或自动方法来转换位置数组,使其具有绑定(bind)意识(类似于 WPF 中的 ObservableCollection)?
我创建了一个 jsfiddle 来试验这个:http://jsfiddle.net/nareshbhatia/357sg/ 。正如您所看到的,对顶级属性的更改会反射(reflect)在输出中,但对位置的任何更改则不会。我将非常感谢有关如何执行此操作的任何提示。
谢谢。
纳雷什
编辑:理想的情况是 Ember.js 能够以某种方式将我的 JSON feed 解析为嵌套的 Ember.js 对象。例如,如果我按如下方式显式定义我的类,是否可以帮助 Ember.js 创建正确的对象?
App.Account = Ember.Object.extend({
id: null,
name: null,
positions: Ember.ArrayProxy.create()
});
App.Position = Ember.Object.extend({
symbol: null,
quantity: null,
lastTrade: null
});
App.account = App.Account.create(App.jsonObject);
我的最终目标是在分层网格中显示此结构,该网格可以在帐户级别展开/折叠。来自 WPF/Silverlight 世界,做这样的事情相当容易。您需要做的就是在 XAML 中为网格指定一个嵌套模板,它知道如何解释您的模型。你可以找到一个例子here - 遵循起来并不太困难。我想知道 Ember.js 中是否可以实现类似的操作。
最佳答案
在使用绑定(bind)添加到 Ember 数组对象时,您需要使用 pushObject
而不是 push
。访问 positions
属性时,您可能应该使用 get()
。请参阅我的 jsFiddle 进行更正。
关于ember.js - 如何在 Ember.js 中创建嵌套模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9186214/
我是一名优秀的程序员,十分优秀!