如何在骨干中增加ID

时间:2015-04-13 18:02:06

标签: javascript backbone.js

我正在尝试增加我分配给Backbone中的视图的ID。使用下面的代码,每个元素的ID都是1,我尝试了十几种方法在不同的位置使用id ++增加id,这样我就可以根据它们的id与元素进行交互。我使用以下代码来设置ID。任何寻找将ID增加1的方法的帮助都将非常受欢迎。

 initialize:function(models, options){
        this.model.set("view",this);
        this.model.set("rank", 1, 'rank++');
        this.model.set("id", 1);
    },

2 个答案:

答案 0 :(得分:0)

对Backbone.js不是很熟悉,但你总是可以使用全局变量。

var nextID = 1;
...
...
initialize: function(models, options){
        this.model.set("id", nextID++);
},

答案 1 :(得分:0)

如果您只是想增加“ID”。每次创建视图并避免创建任何全局变量时,您可以使用javascript闭包来执行此操作。

function counter(){
    var count=0;
    return function (){ return ++count;};
}
var increase = counter()

var View = Backbone.View.extend({
    initialize: function(model,options){
        var id = increase();
        this.model.set('id',id);
    }
});

现在,只要您创建此视图的实例,其ID就会增加1。 你可以在这里阅读关于闭包的更多信息https://developer.mozilla.org/en-US/docs/Web/JavaScript/Closures