三元运算符 Angular JS
Ternary Operator Angular JS
我的控制器中有 $scope.lineData[0].line
。我想检查 $scope.lineData[0] != undefined
,如果是,则 $scope.lineData[0].line
否则只需添加 "0"
值。如何用 angular JS 做到这一点?
谁能帮我做这个?
提前致谢..
应该这样做:
{{ $scope.lineData[0] ? $scope.lineData[0].line : "0" }}
更新
你也可以简单地做:
{{ $scope.lineData[0].line || "0" }}
Angular 将从左到右合并第一个 non-null/undefined 值。
在模板中我们会这样做
{{ lineData[0] ? lineData[0].line : "0" }}
在控制器中,我们将做
var some_value = $scope.lineData[0] ? $scope.lineData[0].line : "0";
你可以根据你的用例来使用它,其中一些可能是:
1) 例如。 <input ng-value="getLine()" />
2) 例如。 <div>{{lineData[0] ? lineData[0].line : "0"}}</div>
3) 例如。在控制器中,var value = $scope.lineData[0] ? $scope.lineData[0].line : "0";
HTML :
<div ng-controller="MyCtrl">
<input ng-value="getLine()" />
<div>{{lineData[0] ? lineData[0].line : "0"}}</div>
</div>
JavaScript :
var myApp = angular.module('myApp',[]);
function MyCtrl($scope) {
$scope.lineData = [{
line : 3,
}];
$scope.getLine = function() {
return $scope.lineData[0] ? $scope.lineData[0].line : "0";
}
}
JSFiddle : http://jsfiddle.net/nikdtu/v6ezygy2/
我的控制器中有 $scope.lineData[0].line
。我想检查 $scope.lineData[0] != undefined
,如果是,则 $scope.lineData[0].line
否则只需添加 "0"
值。如何用 angular JS 做到这一点?
谁能帮我做这个? 提前致谢..
应该这样做:
{{ $scope.lineData[0] ? $scope.lineData[0].line : "0" }}
更新
你也可以简单地做:
{{ $scope.lineData[0].line || "0" }}
Angular 将从左到右合并第一个 non-null/undefined 值。
在模板中我们会这样做
{{ lineData[0] ? lineData[0].line : "0" }}
在控制器中,我们将做
var some_value = $scope.lineData[0] ? $scope.lineData[0].line : "0";
你可以根据你的用例来使用它,其中一些可能是:
1) 例如。 <input ng-value="getLine()" />
2) 例如。 <div>{{lineData[0] ? lineData[0].line : "0"}}</div>
3) 例如。在控制器中,var value = $scope.lineData[0] ? $scope.lineData[0].line : "0";
HTML :
<div ng-controller="MyCtrl">
<input ng-value="getLine()" />
<div>{{lineData[0] ? lineData[0].line : "0"}}</div>
</div>
JavaScript :
var myApp = angular.module('myApp',[]);
function MyCtrl($scope) {
$scope.lineData = [{
line : 3,
}];
$scope.getLine = function() {
return $scope.lineData[0] ? $scope.lineData[0].line : "0";
}
}
JSFiddle : http://jsfiddle.net/nikdtu/v6ezygy2/