微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

angularjs – Angular – ngModel在ngInclude内调用时不更新

首先,这个洞穴: http://plnkr.co/edit/v1uTz5

这是我正在遇到的问题的一个工作演示。

我有一个纳入包括一个部分。

在部分我有一个文本输入与ngModel和指令。

该模型在include中相应更新,但忽略include之外的任何交互。包含之外的{{test}}不会更新,但{{test}}内。

该指令在被调用时处理输入键并调用正确的范围和功能。但是,$ scope.test变量从未更新过,但是$ scope.testFinal已更新,并且ng-include模板正确呈现。尝试重置$ scope.test模型也不起作用。

在这里遗漏了什么吗?或者这是指令还是使用ng-include的错误

而不是使用primitiive定义变量,使其成为一个对象。
$scope.model={test:''};

指令为每个项目创建自己的范围。当您将一个原语等同于一个新的作用域变量时,它与原始对象没有任何约束,但是当原始对象是一个对象时,创建一个引用而不是一个副本,一个引用的变更将反映在另一个

简单说明示例:

var a ='foo';
var b= a;
/* Now change a*/
a='bar';
alert( b) // is still 'foo'

现在用对象做同样的事情:

var obj_1= {a:'foo'};
var obj_2=obj_1;
/* Now change obj_1.a*/
obj_1.a='bar';
alert( obj_2.a) // change to obj_1 will also change obj_2 and alert returns "bar"*/

Your Plunker Modified

Read this article on angular wiki for more detailed explanation

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐