0
我無法跟蹤模型實例的屬性。比如我有宣言,如:Backbone.js模型屬性常量 - 這是一個好習慣嗎?
MyModel = Backbone.Model.extend({});
然後在我的意見,我經常做這樣的事情:
var someVal = this.model.get('someProperty');
我開始通過將它們封裝移動搜索的字符串爲常數的任務在一個對象,並把它當作第二個參數到View的構造函數,例如:
SchemaOptionsView = Backbone.View.extend(
{ /* Body of View here as usual */},
{
TEMPLATE: '#View-Template',
INPUT_REQUIRED:'required'
});
當我開始思考,我可以用我的模型做這個解決兩個問題:
MyModel = Backbone.Model.extend(
{ /* Body of Model here as usual */},
{
PROPERTY_1 = 'p1',
PROPERTY_2 = 'p2'
});
然後我可以使用常量來檢索屬性值:
var someVal = this.model.get(MyModel.PROPERTY_1);
這將讓我清楚地看到模型實例包含的屬性,也可移動字符串值轉換成一個常數一個合適的地方。
我還沒有看到這個推薦或在任何例子。我錯過了什麼嗎?人們對這個想法有什麼看法?
你能提供一個如何枚舉模型的可用屬性的例子嗎? – Jack 2012-04-08 04:42:10
@Jack是的。模型聲明的默認哈希。如果你看看我的[驗證庫](http://github.com/toddself/Backbone.Validator/)上的例子,你會看到我正在引用的東西。 – tkone 2012-04-08 22:53:18
@傑克我知道這是一個非常古老的東西,但可能會幫助野外的人。 所以,你會爲模型myModel myModel.toJSON()返回一個包含其所有屬性的對象 – 2013-08-31 02:11:30