AngularJS : 撤消 ng-repeat 中的更改

AngularJS : undoing changes in ng-repeat

我正在尝试创建就地编辑指令。我目前坚持的是取消编辑的能力。我正在尝试使用 $parse 复制模型,然后使用 assign 将其设置回去,但是当元素发生变化时,底层模型却没有。

请在http://goo.gl/3ALOQd

找到它

代码不起作用的原因是 $parse(expression).assign($scope, val) 将用我的值替换该值。在本例中,值为 contact,它是对控制器作用域中对象数组的对象引用。当我设置自己的值时,这会将引用替换为对另一个对象的引用