2014-09-05 10 views
11

Ich arbeite an einer komplexen App, wo ich eine Verbindung deaktivieren muss, wenn die ID aus dem Backend ein bestimmtes Kriterium erfüllt. Ich benutze das jetzt aber nicht sicher, ob es richtig ist:AngularJS ng-show ternäre Bedingung mit mehreren Bedingungen

ng-show="parentheaderData.casid === '807' || '806' || '808' ?false:true" 

dieses Recht sieht?

Antwort

1
ng-show="(parentheaderData.casid === '807' || parentheaderData.casid ==='806' parentheaderData.casid === || '808') ? false : true" 
9

Warum Sie nicht über diese Logik an einen Controller bewegen, so dass Sie

html haben:

ng-show="showParentheader(parentheaderData.casid)" 

Controller:

$scope.showParentheader = function(id) { 
    return ! (id === '807' || id ==='806' || id ==='808'); 
} 
2

Sie tun können, wie folgt aus:

ng-show="(parentheaderData.casid === '807' || parentheaderData.casid ==='806' parentheaderData.casid === || '808') ? false : true" 

oder:

ng-show=" !(parentheaderData.casid === '807' || parentheaderData.casid ==='806' parentheaderData.casid === || '808')" 
9

Dank für all die Unterstützung. Die richtige Lösung war:

ng-hide="parentheaderData.casid == '806' || parentheaderData.casid == '807' || parentheaderData.casid == '808'" 
+0

Sie sollten diese Antwort als richtig akzeptieren – Icet