javascript - 设置 Angular 变量互不影响

标签 javascript angularjs

我是 Angular JS 的新手,并且遇到了(我认为)简单的问题。抱歉,如果我重复了问题,但我找不到任何相关主题。

我需要设置 $scope 变量而不互相影响,但是当我设置它们时,两者都会更新为相同的结果:

var defaultFilterValues = {
    show_limit: 20,
    purpose: {}
};

$scope.filter = defaultFilterValues;

console.log($scope.filter);
console.log(defaultFilterValues);

如果我设置 $scope.filter = {/* any data */} 两个结果都会更新,我如何隔离 defaultFilterValue 以始终获得主要结果?

最佳答案

不能 100% 确定您想要什么,但您可以使用 angular.copy() 来复制未引用原始对象的副本

引用angular.copy() docs

$scope.filter = angular.copy(defaultFilterValues);

它还会清除 Angular 添加到对象的任何内部哈希键

关于javascript - 设置 Angular 变量互不影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32681633/

相关文章:

javascript - (jquery) 圆形按钮集?

javascript - 如何重写它,以便它不会触发复选框

javascript - yeoman gulp-angular projekt 设置后单元测试出错

javascript - 我想比较angularjs中输入文本框的旧值和新值是否相同?

java - (架构)为 angular2 应用程序抓取数据。直接检查MongoDB还是我的Java REST?

javascript - 使用 Jquery 更改我的下拉列表的选定索引

javascript - 定义 JQuery 函数

javascript - 我需要通过 ajax 将文件作为表单数据传递并从 php 读取?

AngularJS:迭代对象时代码不起作用

javascript - 将图像从计算机上传到 Fabric.JS Canvas