gpt4 book ai didi

angularjs - Angular - 在 ngInclude 中调用时 ngModel 不更新

转载 作者:行者123 更新时间:2023-12-03 13:22:49 28 4
gpt4 key购买 nike

首先也是最重要的,plunker:http://plnkr.co/edit/v1uTz5

这是我遇到的问题的工作演示。

我有一个 ng-include包括部分。

在部分内部,我有一个带有 ngModel 的文本输入AND 指令。

模型在包含内相应地更新,但包含外的任何交互都将被忽略。 {{test}}包含之外的内容不会更新,但 {{test}}里面有。

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

我在这里错过了什么吗?或者这是指令或 ng-include 的错误? ?

最佳答案

不要使用原语来定义变量,而是让它成为一个对象。

$scope.model={test:''};

指令为每个项目创建自己的范围。当您将原语等同于新的范围变量时,它与原始变量没有绑定(bind),但是当原始变量是对象时,将创建引用,而不是副本,并且在其中所做的更改将反射(reflect)在另一个中

简单的解释性示例:
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

关于angularjs - Angular - 在 ngInclude 中调用时 ngModel 不更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15936509/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com