0

backbone.js で、コレクションに属性を追加することはできますか? モデルがアタッチされていますが、すべてのモデル エンティティに共通の属性を定義する必要があります。これらの属性は、コレクション レベルで最適に配置されることが自然にわかります。

何かご意見は?

4

1 に答える 1

1

これは JavaScript です。すべてが可能です。コレクションのコンストラクター関数、コレクションのプロトタイプ、コレクションの具体的なインスタンスに何でもアタッチできます。そして、同じことがモデルにも当てはまります。

// #1
var YourCollection = Backbone.Collection.extend({}, {sharedAttribute : 1});
var collection = new YourCollection();
console.log(collection.constructor.sharedAttribute); // 1

// #2
var YourCollection = Backbone.Collection.extend();
YourCollection.sharedAttribute = 2;
var collection = new YourCollection();
console.log(collection.constructor.sharedAttribute); // 2

// #3
var YourCollection = Backbone.Collection.extend();
YourCollection.prototype.sharedAttribute = 3;
var collection = new YourCollection();
console.log(collection.sharedAttribute); // 3

// #4
var YourCollection = Backbone.Collection.extend();
var collection = new YourCollection();
collection.sharedAttribute = 4;
console.log(collection.sharedAttribute); // 4
于 2012-10-16T09:46:46.330 に答える