ng-click 中的一种数据绑定方式
One way data binding inside ng-click
我的控制器中有两个 $scope 数组。
$scope.arrayA= [false, false, false, false, false, false];
$scope.arrayB= [false, false, false, false, false, false];
arrayA 将根据复选框的点击而改变。这部分我已经完成了。
仅当单击按钮时,arrayB 才会将值更改为等于 arrayA 的值。
<button type="button" ng-click="arrayB = arrayA" class="btn btn-search">Get Data</button>
问题是单击按钮后,将实现两种方式的数据绑定。 arrayB 将在每次 arrayA 更改时更改。
我只想在单击按钮时更改 arrayB。有没有办法在 ng-click 中使用 angular 单向数据绑定 @
?你知道我们如何将 python 中的变量值传递为 varB = varA
.
不是将 arrayA
直接分配给 arrayB
,而是需要创建它的副本,这样两个变量就不会引用同一个对象。
arrayA = arrayB
上面的赋值只是让arrayA
和arrayB
指向同一个对象。点击按钮,您可以试试这个:
arrayB = arrayA.map(item => item);
这将确保创建数组的新副本,并且由于 varA
包含的值是原始值(布尔值),因此不会发生冲突。
我的控制器中有两个 $scope 数组。
$scope.arrayA= [false, false, false, false, false, false];
$scope.arrayB= [false, false, false, false, false, false];
arrayA 将根据复选框的点击而改变。这部分我已经完成了。
仅当单击按钮时,arrayB 才会将值更改为等于 arrayA 的值。
<button type="button" ng-click="arrayB = arrayA" class="btn btn-search">Get Data</button>
问题是单击按钮后,将实现两种方式的数据绑定。 arrayB 将在每次 arrayA 更改时更改。
我只想在单击按钮时更改 arrayB。有没有办法在 ng-click 中使用 angular 单向数据绑定 @
?你知道我们如何将 python 中的变量值传递为 varB = varA
.
不是将 arrayA
直接分配给 arrayB
,而是需要创建它的副本,这样两个变量就不会引用同一个对象。
arrayA = arrayB
上面的赋值只是让arrayA
和arrayB
指向同一个对象。点击按钮,您可以试试这个:
arrayB = arrayA.map(item => item);
这将确保创建数组的新副本,并且由于 varA
包含的值是原始值(布尔值),因此不会发生冲突。