适用于ng-model

时间:2015-04-28 15:21:26

标签: angularjs contenteditable angular-directive

我正在使用一个令人满意的指令(本讨论中的代码:https://github.com/angular/angular.js/issues/528)来更新我的模型。我也希望在后端更新(我正在使用ngResource)。

我的模板是循环遍历person in people并为每个人:

<span contenteditable ng-model="person.name" ng-blur="updatePersonName(person)">{{person.name}}</span>

我原以为那个人会是blur上的更新变量,但当我console.log updatePersonName时,我会得到奇怪的输出:

Resource {id: 1, name: "Bob the Builder", created_at: "2015-04-23T14:57:28.999Z", updated_at: "2015-04-28T11:42:05.701Z", $$hashKey: "object:4"…}
 $$hashKey: "object:4"
 created_at: "2015-04-23T14:57:28.999Z"id: 1
 name: "Bob the Builder With Modifications"
 updated_at: "2015-04-28T11:42:05.701Z"
 __proto__: Resource

注意名称之间的差异(此输出的第二部分是展开视图)

该指令使用:

element.bind("blur", function() {
    scope.$apply(read);
});

当我在我的update资源上调用Person时,它会发送原始模型但似乎在本地更新模型,这样如果我再做一次修改,它就会发送我的第一个更改并落后一次迭代

0 个答案:

没有答案