2016-12-26 9 views
0

У меня есть $scope.lineData[0].line в моем контроллере. Я хочу проверить $scope.lineData[0] != undefined, Если это так, то $scope.lineData[0].line еще "0" значение для добавления. Как это можно сделать с угловым JS?Тернарный оператор Угловой JS

Может ли кто-нибудь помочь мне сделать это? Заранее спасибо ..

+1

'вар х = $ scope.lineData [0]! == undefined? $ scope.lineData [0] .line: 0; ' – Satpal

+0

@Satpal: Спасибо .. Его работа .. – KaviSuja

ответ

1

В шаблоне мы бы сделали это что-то вроде

{{ lineData[0] ? lineData[0].line : "0" }} 

В контроллере, мы будем делать

var some_value = $scope.lineData[0] ? $scope.lineData[0].line : "0"; 
1

Это должно сделать это:

{{ $scope.lineData[0] ? $scope.lineData[0].line : "0" }}

Update

Вы также можете просто сделать:

{{ $scope.lineData[0].line || "0" }}

Угловая сольются из слева направо, null/undefined value.

0

Вы можете использовать его в соответствии с вашими USECASE, немногие из них могут быть:

1) ex. <input ng-value="getLine()" />

2) ex. <div>{{lineData[0] ? lineData[0].line : "0"}}</div>

3) ex. в контроллере, 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/

 Смежные вопросы

  • Нет связанных вопросов^_^