【发布时间】:2016-04-13 13:02:05
【问题描述】:
布尔运算符的声明顺序有什么影响?
控制器:
$scope.show = false;
$scope.clickMe = function() {
$scope.show = true;
$scope.name = 'Name defined'
};
模板:
<button ng-click="clickMe($event)">Click Me</button>
<p ng-if="::(show && name)">show && name</p>
<p ng-if="::(name && show)">name && show</p>
点击按钮后会导致第二个p 元素以name && show 的顺序显示。我知道p 元素都不应该显示为$scope.show 已经定义并且使用了一次绑定?
请戳这里:
【问题讨论】:
-
可能是因为 $scope.name 尚未定义?如果你将 $scope.name 初始化为 'name undefined' 呢?
标签: javascript angularjs boolean-operations one-time-binding