NOODL.COLLECTION

Noodl.Collection.get(id)
指定したIDによってコレクションを返す。使用されていないIDで新規作成した空のコレクションは返される。

Noodl.Collection.exists(id)
指定されたIdを持つコレクションが存在する場合、trueを返す。すなわちNoodl.Collection.getで作成される。

collection.on(event,listener)
collection.off(event,listener)
コレクションからイベントリスナーの追加/削除ができる。
サポートされているイベント:

  • add – 追加されるモデル
  • remove – 削除されるモデル
  • change – addでもremoveでも発動する

Example usage:

myCollection.on('change',function() {
    // The items of myCollection has changed, e.g. a model has been added or removed
    // will NOT be triggered if the properties of the models have changed
});

myCollection.on('add',function(args) {
    // The model args.item have been added to this collection
});

myCollection.on('remove',function(args) {
    // The model args.item have been removed from this collection
    // The model was removed from index args.index
});

collection.set(items)
コレクションの全アイテムを、供給されたアイテムと交換する。アイテム引数はアレイのみまたはオブジェクトを伴ったアレイになり、その場合はNoodl.Model.createファンクションを伴うオブジェクト用にモデルが自動的に作成される。アレイにモデルとオブジェクトを混合させたものを含むことも可能。アイテムの引数を別のコレクションにすることも可能。

モデルがコレクションのアイテムの一部である場合、モデルのID(またはオブジェクトの属性ID)で決定する。コレクション内にすでに含まれているモデルはアップデートされ、(適切なイベントの発動に)追加されないモデルやコレクションにないモデルは削除される。

collection.contains(item)
コレクション内にモデルのitemが存在していればtrueを返す。

collection.add(item)
コレクションの最後にitemモデルを追加する。

collection.remove(item)
コレクションからitemモデルを削除する。

collection.size()
コレクションのサイズとコレクション内のモデルの数を返す。

collection.get(index)
指定したインデックスにモデルのitemを返す。範囲外であればundefinedを返す。

collection.each(callback)
コレクション全体のモデルを繰り返し、引数がmodelindexのモデルにコールバックファンクションを呼び出す。