AngularJS更新变量

时间:2014-10-29 04:33:04

标签: javascript angularjs variables global-variables

我有一个全局变量,我在点击时为全局变量分配了一个JSON。但是,即使我没有点击,全局变量也会更新。

$scope.save = function() { // method called on click
    DataBasket.users = $scope.usersPermissions; // Actually DataBasket is a factory, updating global variable
}

我也在操纵$scope.usersPermissions对其他点击的价值。但我不希望它更新为全局变量。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

我认为你想要的是DataBasket.users $scope.usersPermissions的副本。试着这样做:

$scope.save = function() {
    DataBasket.users = angular.copy($scope.usersPermissions);
}

否则DataBasket.users将引用与$scope.usersPermissions相同的对象,无论何时更改一个,另一个也会改变,因为实际上它们将是同一个对象。