ng-click angular js 中的三元条件
Ternary condition in ng-click angular js
在 HTML
中,我有一个 button
,我在上面使用 ng-click
事件,如下所示:
ng-click="!user.name : openModel('lg') ? ''"
我是说,如果 user.name
没有定义,那么调用名为 openModel()
的函数,否则什么都不做。
但它正在生成错误
Error: $parse:syntax
Syntax Error
Syntax Error: Token ':' is an unexpected token at column 33 of the expression [!user.name :] starting at [{4}].
所以这里有什么问题?
谢谢。
不要在模板中放置任何条件表达式。在控制器代码中放置,
ng-click="openModel('lg')"
控制器:
$scope.openModel = function(value) {
if ($scope.name) {
Open();
}
}
正确的语法是ng-click="!user.name ? openModel('lg') : angular.noop()"
。 angular.noop()
是一个不执行任何操作的函数。
在 HTML
中,我有一个 button
,我在上面使用 ng-click
事件,如下所示:
ng-click="!user.name : openModel('lg') ? ''"
我是说,如果 user.name
没有定义,那么调用名为 openModel()
的函数,否则什么都不做。
但它正在生成错误
Error: $parse:syntax
Syntax Error
Syntax Error: Token ':' is an unexpected token at column 33 of the expression [!user.name :] starting at [{4}].
所以这里有什么问题?
谢谢。
不要在模板中放置任何条件表达式。在控制器代码中放置,
ng-click="openModel('lg')"
控制器:
$scope.openModel = function(value) {
if ($scope.name) {
Open();
}
}
正确的语法是ng-click="!user.name ? openModel('lg') : angular.noop()"
。 angular.noop()
是一个不执行任何操作的函数。