【发布时间】:2013-08-10 07:14:15
【问题描述】:
我记得在 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 做所有事情(甚至是这些简单的属性)??
谢谢
【问题讨论】:
-
这是视频中 Miško 提到您需要使用 ng-model 的“点”的确切位置:youtube.com/…
-
“使用点”分崩离析的一个地方是,如果您的指令采用 ngModel 但包装了其他指令并将 ngModel 传递给其他指令。一旦第一次通过,点符号就会丢失,因为变量在传递给第一个指令后立即重命名为“ngModel”(或您设置的任何别名)。从那时起,它被称为“ngModel”,它没有点符号并被视为一个原语,这会影响它在嵌套指令链中进一步向下传递的能力