我有Ember.Object被用作基本鍵/值字典。這些鍵的名字是動態的,我想要做的就是迭代這些屬性。似乎這應該很容易,但谷歌搜索和我的集體頭抓撓似乎沒有指向我期待的明顯答案。通過Ember對象進行迭代
爲以下僞代碼:
App.MyObject = Ember.Object.extend({
randomComputedProperty: function() {
return "foobar";
}
}
$object = new MyObject.create(someBigAndUnpredictableNameValueHash);
我的理想的解決方案將解決此代碼,可以讓我快速瞭解:
- 批判:屬性名稱的數組是
object
有 - 理想情況下:一組計算屬性名稱
object
具有 - 頂部結冰:計算機數組編輯屬性,包括沿着吸氣者的設置者
無論如何有什麼想法?
----- ----- UPDATE
爲了一點更加明確我的精確使用情況。虛構MyObject
實際上是從一個我的模型採用的是屬性:
App.MyModel = DS.Model.extend({
prop1: DS.attr('string'),
prop2: DS.attr('number'),
prop3: DS.attr('my-object')
}
凡Transform對象是設置來處理序列化/反序列化:
App.MyObjectTransform = DS.Trnasform.extend({
deserialize: function(serialized) {
return App.MyObject.create(serialized)
},
deserialize: function(deserialized) {
return deserialized;
}
}
這樣,當我與MyModel
工作在車把模板中,我可以做類似的事情:
{{prop1}}
{{prop2}}
{{#each prop3}}
{{key}} = {{value}}
{{/each}}
應該提到的是,這是一次快照查看對象,它不會觀察添加/刪除/更改的屬性。 – Kingpin2k
答覆已更新。 –