[AngularJS]对象保存在相同的值在 angularjs

发布时间: 2017/4/16 16:19:47
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我要去推使用 angularjs 数组中的对象。但它在每个对象存储了相同的值。其关联的对象。

service('setAttribs',function(){

 var setMapAttrib = {
  Processtet : {},
 };

 var tmp = [];

 return {

  setvalues : function(value){

   tmp.push(value);

   console.log(tmp);

   //setMapAttrib.Processtet[value.SelectedId] = { [value.getIndex] : value };
   //setMapAttrib.Processtet[value.SelectedId] = { [value.getIndex] : value };
   //console.log(setMapAttrib.Processtet[value.SelectedId]);

   /* if(setMapAttrib.Processtet[value.SelectedId]==null)
    setMapAttrib.Processtet[value.SelectedId] = [{}];

   setMapAttrib.Processtet[value.getIndex] = value;

   console.log(setMapAttrib.Processtet); */

  },

任何人有一个想法,要解决这个问题吗?

解决方法 1:

使用angular.copy()来避免推相同范围对象引用数组遍又一遍

setvalues : function(value){
   var newItem = angular.copy(value);
   tmp.push(newItem );

   console.log(tmp);
赞助商