Mar*_*tin 24 angularjs angularjs-scope
我记得在AngularJS的一个视频中看到这句名言应该总是使用一个.(点)您的模型.
好吧,我想跟着这个说我有
   var item = {}
   item.title = "Easy Access to support";
   item.available = true;
   item.price = 31.67;
所以这在我看来很有效
  {{ item.title }}
  {{ item.available }}
我正在使用一个点,所以我觉得这很好.
但我有一些属性,我不认为是模型的一部分,但也许我错了.例如,我有一个属性,我用来启用或禁用使用ng-disable的按钮,我已使用点格式输入.它基本上就是这样进入的
 $scope.disableButton = true;
我喜欢它
 ng-disable="disableButton"......
我应该将模型的这一部分作为"项目"吗?或者创建另一个js对象,这样我就可以使用点来保存这个属性?
任何人都知道这是否可以接受,或者我应该用.dot做所有事情(即使是这些简单的属性)?
谢谢
Ste*_*ers 46
"模型中应该总是有一个点"是指ngModel.该指令执行双向绑定.如果你双向绑定到一个原语(例如你的情况下是一个布尔值),那么setter会将它设置在当前作用域而不是定义它的作用域上,当你有一个大的用户时,这会导致头痛 - 与很多子范围的接口.它没有引用其他指令,如ngDisable.有关此特定问题的详细信息,请参阅此说明.
示例场景:父作用域使用$scope.foo = "bar",子作用域使用<input type="text" data-ng-model="foo">.它bar最初会显示,但是一旦用户更改了值,foo将在子范围上创建a ,绑定将读取和写入该值.父母的foo遗嘱将继续存在bar.希望能够很好地总结它.
因此,ngModel出于某些目的,您可能必须创建一个对象来解决此类绑定问题,但对于任何其他指令,您应该具有常规的逻辑分组.
| 归档时间: | 
 | 
| 查看次数: | 16461 次 | 
| 最近记录: |