簡體   English   中英

Backbone Collection推送循環

[英]Backbone Collection Push with a loop

我正在嘗試構建一個集合,但需要動態構建它,因為我不知道要推送多少。 目前我所做的是;

var DataCollection = Backbone.Collection.extend({
            model : dataModel
        });

        var dataModel = Backbone.Model.extend({
            defaults : {
                dataID : 'unknown',
                text : 'unknown',

            }
        });


        var linkPrev = new dataModel({ dataID: "Prev", text: "Prev" });
        var link1 = new dataModel({ dataID: "1", text: "1" });
        var link2 = new dataModel({ dataID: "2", text: "2" });
        var link3 = new dataModel({ dataID: "3", text: "3" });
        var linkNext = new dataModel({ dataID: "Next", text: "Next" });

        var myDataCollection = new DataCollection();
        //myDataCollection.push(linkPrev);
        myDataCollection.push(link1);
        myDataCollection.push(link2);
        myDataCollection.push(link3);
        myDataCollection.push(linkNext);

而不是手動說

link1 = new dataModel({ dataID: "1", text: "1" }); 
myDataCollection.push(link1);

我可以動態創建列表嗎?

例如,如果我有4個鏈接,我希望link4添加dataID:4,TextID:4 ...等...

如果你需要在初始化時填充集合,你可以簡單地傳遞一個對象數組來填充,不需要為每個對象創建一個模型,Backbone.Collection將為你做:

var DataCollection = Backbone.Collection.extend({
    model : DataModel
});

var DataModel = Backbone.Model.extend({
    defaults : {
        dataID : 'unknown',
        text : 'unknown'
    }
});

var myDataCollection = new DataCollection([
    { dataID: "Prev", text: "Prev" },
    { dataID: "1", text: "1" },
    { dataID: "2", text: "2" },
    { dataID: "3", text: "3" },
    { dataID: "Next", text: "Next" }
]);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM