当前位置: 首页 > 面试题库 >

angularjs-ng-switch不绑定ng-model

殳经略
2023-03-14
问题内容

我有这个reprohttp://embed.plnkr.co/nVCmukG5abpi1Y4ZHkrq,当我单击“
Title3”并在文本框中输入一个值时显示,尽管输入的值显示在UI中,当我单击“单击”按钮时,什么也没有绑定到范围属性$ scope.test。

我不知道ng-switch有什么问题,或者我做错了什么。帮助表示赞赏!!!

http://embed.plnkr.co/nVCmukG5abpi1Y4ZHkrq


问题答案:

由于ng-switch创建了自己的作用域,因此这是一个作用域继承问题。

经常提出的一项建议是始终使用doton模型。原因是,当控制器作用域项是一个对象而不是基元时,子作用域将创建对初始对象的引用。如果模型是原始类型,则不会更新原始模型。

例如:

<input ng-model="test.value" placeholder="pre" type="text" />



$scope.test={value:''}

另一种方法是$parent在html模型标记中使用:

<input ng-model="$parent.test" placeholder="pre" type="text" />

使用该dot方法是避免这些问题的一种好习惯,因为您无需考虑更深层的嵌套作用域。

test.value作为模型的演示:http
:
//plnkr.co/edit/CkiF55bLXsYzR6ZjcrJp?p=preview

有关dot模型中的参考(有价值的读物):https : //github.com/angular/angular.js/wiki/Understanding-Scopes



 类似资料:
  • 问题内容: 我正在尝试处理ng-repeat循环内的范围问题-我浏览了很多问题,但还无法使我的代码正常工作。 控制器代码: 视图: 这是一个小提琴:http : //jsfiddle.net/cyberwombat/zqTah/ 基本上,我有一个包含多行文本的对象(这是一个传单生成器)。用户可以调整每行文本(文本,字体,大小,颜色等),我想为其创建预览。上面的示例仅显示了输入文本的输入字段,我希望

  • 本文向大家介绍AngularJS动态绑定ng-options的ng-model实例代码,包括了AngularJS动态绑定ng-options的ng-model实例代码的使用技巧和注意事项,需要的朋友参考一下 什么情况下会需要动态绑定 ng-model 呢?若你的数据结构长得像是下面这样: 此时你需要用 ng-repeat 将数据展开,并且将 Options 个别设置为 ng-options 的数据

  • 问题内容: 我对所有页面都有一个通用模板,其中包含一个菜单栏,它位于.bar的外面。我位于其中一个页面的内部,我想将输入数据绑定到此模板区域(该区域位于与输入页面不同的控制器下) )。我的意思是当我输入名称时,该名称将出现在模板区域。可以吗?这是the **** 问题答案: 通过遵循始终具有“’ ”的“最佳实践”,可以很容易地避免使用基元出现此问题。在您的ng模型中 -观看3分钟值得。Misko演

  • 问题内容: 如果我的措词不正确,我事先表示歉意。我在的内部有一个文本框,当我尝试获取文本框值时始终为。我只希望它显示我在相应文本框中键入的内容。 似乎是一个问题,那么我该如何创建全局或控制器根级别以便可以访问它? 这是帮助解决问题的JSFiddle:http : //jsfiddle.net/stevenng/9mx9B/14/ 问题答案: 在您的点击表达式中,您可以引用并在您的函数中对其进行访问

  • 问题内容: AngularJS的两个绑定不适用于div。我希望我的div是可编辑的,但是没有发生。有人可以建议出什么问题吗?相同的绑定在文本框中也可以正常工作。这是我的代码: 问题答案: 请尝试此操作,它可能会有所帮助 https://github.com/angular/angular.js/issues/528 这是一个3岁的未解决问题,很多人希望解决。它被标记为和,而不是错误。鉴于Angul

  • 问题内容: 我无法让ng-transclude在ng-switch-default指令中工作。这是我的代码: 指示: partials / formField.html 我这样称呼… 产生错误: 它可以正常工作,在ng-switch指令之外,但是我对如何使它工作感到迷惑。有什么建议? 编辑:这是一个实时演示:http : //plnkr.co/edit/3CEj5OY8uXMag75Xnliq?p