我正处于学习 Angularjs 的初级阶段,所以请耐心等待我提出这个愚蠢的问题。我基本上想从一开始就以正确的方式去做,而不是仅仅让它发挥作用。
无论如何,我有 1 个订单结帐表,其中包含 2 组地址:运输和计费。我有一个复选框,上面写着“送货地址与账单地址相同”,如果选中它应该同步两个地址。
我的方法是将 2 个地址视为 2 个对象,如果选中该复选框,那么我将有类似 scope.shippingAddress = scope.billingAddress 的内容。
我想知道以上是否是一个好方法?
另外,在复选框更改时触发上述同步的好方法是什么?我应该使用 ng-checked 还是应该使用 $watch?
我会用手表:
$scope.$watch('shippingIsSameAsBilling', function(value) {
if(value) {
$scope.shippingAddress = $scope.billingAddress;
} else {
$scope.shippingAddress = angular.copy($scope.shippingAddress);
}
});
Run Code Online (Sandbox Code Playgroud)
如果用户通过分配每个自己的对象(使用 angular.copy)。
看到这个 工作示例,Plunker。
请注意,您将向后端发送两个相同的地址。你确定要那样做吗?
| 归档时间: |
|
| 查看次数: |
1138 次 |
| 最近记录: |