2014-09-04 61 views
0

我正在更新控制器中的模板模型。型号数据的格式为更新后的模型未在模板中反映

{ 
"key1": "value1", 
"key2": [ 
    { 
     "in1": "val1", 
     "in2": "val2" 
    }, 
    { 
     "in1": "val3", 
     "in2": "val4" 
    } 
] 
} 

通过控制器更新模型后,key1值在模板中反映出来。但是包含在{{#each}} {{/ each}}中的Key2值没有得到体现。

JsBin链接: http://jsbin.com/dahehonagufi/3/edit

请帮助我什么,我做错了什么......

回答

1

我与你JSBin玩耍了,它看起来像的问题是,因为你定义该模型作为一个普通的JS对象,Ember无法正确观察/拾取模型变化。

这个版本应该工作(请注意,我裹在Ember.Object.create({...})平原对象:http://jsbin.com/dahehonagufi/6/edit

有可能是一个简单的解决方案,但它不是来找我,现在

+0

@gomer我需要遍历10次​​我的普通js数组说它有10个元素,并为每个元素创建Ember对象,并将它们保存在另一个数组中,这是非常烦人和烦人的任何其他方式从json对象创建Ember对象 – Susai 2014-09-04 15:28:46

+1

@Susai如果你想你的对象是可观察的,那么是的,你必须把它们包装在'Ember.Object.create()'中。 – GJK 2014-09-04 16:10:18