6
Ember.js(和Ember Data)允許我指定模型的屬性,如id
,label
和description
。但是我允許我的用戶將自己的屬性添加到任何模型中,這對我來說顯然是不可能知道的。有什麼辦法可以在運行時動態地向模型添加屬性? (更重要的是,將Ember.js識別這些特性的變化,並將它們保存?)Ember.js動態模型屬性
Ember.js(和Ember Data)允許我指定模型的屬性,如id
,label
和description
。但是我允許我的用戶將自己的屬性添加到任何模型中,這對我來說顯然是不可能知道的。有什麼辦法可以在運行時動態地向模型添加屬性? (更重要的是,將Ember.js識別這些特性的變化,並將它們保存?)Ember.js動態模型屬性
灰燼通過Ember.defineProperty
定義對象的屬性。簽名是Ember.defineProperty(object, propertyName, function)
。例如定義lorem
財產_lorem
的支持,您可以使用
Ember.defineProperty(this, 'lorem',
Ember.computed(function (key, value) {
if (value) {
this.set('_lorem', value);
return value;
} else {
return this.get('_lorem');
}
}
));
你可以調用基於用戶輸入處理此方法時propertyName
是動態的。 這種事情是最適合擴展元對象系統。建議小心,特別是用戶輸入!
不錯的答案@Darshan! – intuitivepixel
謝謝,我想這正是我需要的。 – GJK