关于angular双向绑定的一个问题,百度无果,还请帮忙解惑。

用了一段时间anjular蛮好用的。其实用的功能不多。主要用于列表数据绑定以及一些简单效果的绑定,但是最近出现一个现象,百度无果,居然没有人遇到。
现在描述一下,截图不方便,希望有人解惑。

列表ng-repeat绑定列表数据,每一条数据都有一个编辑操作,点击按钮将当前循环对象传到方法Edit(p)中,在Edit方法中将p变量赋值给另一个属性 $scope.UserInfo = p;然后在页面中,点击按钮出来弹出编辑框,编辑框中有很多输入框。绑定值,ng-model="UserInfo.UserName",此时奇怪的现象,修改UserName值之后,UserInfo连带修改,这毫无疑问,关键是列表中的这一行数据也变了,而且此时如果关闭掉(不保存)编辑框,值无法还原。

难道在angular下,赋值是深层次的?类似于引用类型赋值?所以对这个数据的修改其实都是对同一个地址的数据修改?如果这样的话。我该怎么在编辑的时候,不去保存,页面的值能恢复呢?

上一篇:scrapy, 自带命令行调用工具.


下一篇:【Jquery系列】prop和attr区别