我使用模态弹出来编辑网格视图中的一行。我能够使用row. getproperty()函数检索模态中的行值。但问题是,当我尝试在模态中编辑值时,在点击更新按钮之前,背景视图中的值也会同时发生变化。
如果您不希望末尾立即生效,您需要复制您的模型并编辑复制的版本。一旦用户单击更新按钮,您就可以将复制的值移动到原始模型中。
function Controller($scope) {
$scope.master= {};
$scope.update = function(user) {
// Example with 1 argument
$scope.master= angular.copy(user);
};
$scope.reset = function() {
// Example with 2 arguments
angular.copy($scope.master, $scope.user);
};
$scope.reset();
}
我猜你正在使用相同的对象引用绑定到你的模态视图和你的静态背景视图。
要解决这个问题,你可以在你的模态中创建一个对象的副本:
在Modal中,使用$scope.copy = angular.copy(obj);
将对象的副本绑定到作用域。提交后,使用angular.extend(obj, copy);
将属性重新分配给原始对象。
使用角。Copy将副本赋值给原始对象也可以工作,并且优于extend:
$scope.obj = angular.copy(copy, obj);