服务器响应后更新绑定/如何有选择地更新绑定?

Update binding after server response / How do I selectively update bindings?

我试图阻止模型的值在表单中更新。

例如:

我有一个付款明细表格,其中列出了用户保存的信息(姓名、地址等)以及用于编辑相同信息的表格。

我一直在尝试使用 :: 绑定一次,因为我不希望在输入控件更改时更改显示的信息(但我显然希望模型更新值,以便我可以将它们发送到服务器进行处理)。

在服务器响应更改已保存、是否正常等后,如何更新显示的模型值?我似乎找不到更新一次性绑定的方法(因为我猜这完全是预期的功能)。

所以我想我的问题可以归结为:

如何有选择地更新某些控件上的绑定而不更新其他控件上的绑定?

其实你只是想显示不同的变量。

您应该尝试使用临时模型对象(即您的对象的副本,如 "editedObject"),当您验证时,您将更新原始对象。

看到它在这个 plunker

中工作

编辑 space :

<input ng-model="editCopy.value"> <button ng-click="validateChange()">Change</button>

ng-repeat :

<td ng-repeat="item in items" ng-click="editItem(item)">
    <a href="">{{item.value}}</a>
</td>

函数:

$scope.editItem = function(item){
  $scope.editCopy = angular.copy(item);
  $scope.editingItem = item;
}
$scope.validateChange = function(){
  $http.get('index.html').success(function(){
    $scope.editingItem.value = $scope.editCopy.value;
  }); 
}