2016-04-04 2 views
0

クラスに含まれるプロパティを定義します。私たちはOOPにバックボーンを使用します。私はバックボーンモデルが初期化されるときにそのプロパティを取得し、extendを使用してクラスのメソッドのみが定義されていることを読んだ。しかし、クラスフィールドを明示的に定義すると読みやすくなります。それを行う方法についていくつかの約束がありますか?バックボーンモデルを定義する規約は何ですか?クラスのプロパティ/フィールド

答えて

2

は、コンストラクタ関数に直接結合する[...]Backbone.Model.extend(properties, [classProperties])
を延ばすだけでなく、任意classProperties

collections,routersおよびviewsについても同様である。

var M = Backbone.Model.extend({ 
    // instances methods and properties go here... 
}, { 
    some_class_method: function() { ... } 
}); 

M.some_class_method(); // Then this will work. 

は、モデル上のクラスメソッドを定義するには
0

バックボーンモデルは

model = new Backbone.Model({foo:'bar'}); 
model.attributes.foo === 'bar'; 

のでattributesキーでデータを保持し、あなたが発射イベントを管理しますmodel.get()model.set()でデータにアクセスする必要があります。

initilizeメソッドを使用して、またはconstructor(インスピレーションのためにMarionetteJSビューを表示することがあります)を書き換えることによって、バックボーンモデルの作成にフックすることもできます。 fine manualから

関連する問題