创建全局计数器/ angularjs中的自动增量

时间:2018-01-18 14:28:22

标签: javascript angularjs

我有一个服务helper如下:

var globalUniqueId = 0;

var getNextId = function(){
    globalUniqueId += 1;
    return globalUniqueId;
}

return {
    getNextId: getNextId
}

然后我在其他控制器中注入此服务,每个服务器都获得一个唯一的id并使用另一个服务将数据推送到共享数组

anotherService.AddRecord(helper.getNextId(),mydata);

anotherService:

AddRecord(id,mydata){
    mydata.id = id;
    myarray.push(mydata);
}

但是我收到了错误,这不应该发生,因为我在数组中生成一个唯一的id,当我使用ng-repeat显示时,我不需要track by $index。这段代码有什么问题吗?

1 个答案:

答案 0 :(得分:0)

如果您使用以下代码:

anotherService.AddRecord(helper.getNextId(),mydata);
anotherService.AddRecord(helper.getNextId(),mydata);

这将两次添加相同的对象。