从var angular中取消绑定$ scope param

时间:2015-11-23 08:55:16

标签: angularjs

我有$ scope.attributesList = [{name:“”,val:“”} ....]

在某些情况下,我需要复制我的列表并从我的目标参数解除绑定。

var param = $ scope.attributesList;

问题是每次$ scope.attributesList改变了我的参数也改变了,我复制了我的$ scope.attributesList后我需要我的参数是静态的而不是改变的。取消绑定的方法是什么?

谢谢,

1 个答案:

答案 0 :(得分:1)

您需要对象的深层副本才能使用angular.copy()

var param = angular.copy($scope.attributesList);

如果我们使用var param = $scope.attributesList;,那么param$scope.attributesList都指向同一个对象,因为$scope.attributesList是引用类型

如果我们使用像1,2这样的原始类型,

 $scope.attributesList = 1;
 var param = $scope.attributesList;

然后param$scope.attributesList是独立的。