Angularjs:控制器

时间:2016-06-13 12:41:36

标签: angularjs

我对angularjs设置值有疑问并将其重置为默认值。

这是一个例子

$scope.defaultValue = {
    a: 1,
    b: 2
}
var dupValue = $scope.defaultValue;

...

function changeValue() {
    dupValue.b = 3;
}

...

执行函数changeValue()后,我希望将dupValue更改回defaultValue,我只需调用

dupValue = $scope.defaultValue;

有些怎么做不起作用。因为defaultValue的元素由于我执行的函数而发生了变化。

有没有办法使这项工作?

1 个答案:

答案 0 :(得分:5)

您不是要复制defaultValue,而只是分配对它的引用。因此,当您修改dupValue时,您还需要更改defautValue。

使用以下方式指定默认值:

dupValue = angular.copy($scope.defaultValue);

请参阅此fiddle