2016-04-23 14 views
1

Ich lade eine JSON-Datei von einem Server mit eckigen und ionischen.Ionischer Alarm - Überprüfen, ob das Ergebnis nicht definiert ist

Dies ist mein Code:

$scope.showAlert = function(mo,di,mi,don,fr,sa,so) { 
       $ionicPopup.alert({ 
       title: 'Success', 
       content: mo + "<br>" + di + "<br>" + mi + "<br>" + don + "<br>" + fr + "<br>" + sa+ "<br>" + so 
       }).then(function(res) { 
       console.log('Test Alert Box'); 
       }); 
      }; 

Für den Artikel:

<i class="icon ion-ios-clock-outline links" ng-click="showAlert(item.openingHours[0], item.openingHours[1], item.openingHours[2], item.openingHours[3], 
    item.openingHours[4], item.openingHours[5], item.openingHours[6] 
)"></i> 

Mein Problem ist, dass manchmal die Ergebnisse, zum Beispiel item.openingHours [6] nicht definiert ist. Ich möchte keinen unbestimmten Text in meiner Warnung. Wie kann ich überprüfen, ob der Wert in der Warnung nicht definiert ist?

Antwort

2

Verwendung bedingter (ternärer) Operator ?, prüfen, ob str definiert wird, kehrt mit br den Wert, wenn definiert, wenn nicht - leere Zeichenkette:

$scope.showAlert = function(mo, di, mi, don, fr, sa, so) { 
    function getStrWithBr(str) { 
    return str ? str + '<br/>' : ''; 
    } 
    var content = 
    getStrWithBr(mo) + 
    getStrWithBr(di) + 
    getStrWithBr(mi) + 
    getStrWithBr(fr) + 
    getStrWithBr(sa) + 
    so || ''; 
... 
+0

behoben, jetzt 'br' wird nur hinzugefügt, wenn die Wert ist definiert. – alexmac

+0

Vielen Dank @Alexander! – olivier

Verwandte Themen