0

So versuche ich anzuzeigen, Wetter ein Benutzer ist aktiv oder nicht aktiv. Die Daten kommen über eine API in Boolescher Form. So wird es einfach sagen, Benutzer ist wahr oder Benutzer ist falsch. Ich möchte 'Aktiv' zeigen, wenn die Daten wahr, 'Nicht aktiv' zurückgibt, wenn der Benutzer false.Lösung ich tat, war eine einfache, wenn sonst, dass der Job tut, aber das ist stark wiederverwendet durch die App und ich möchte einen eckigen Filter machen, um diese Aufgabe zu erledigen. Ich bin Anfänger in Angular und Java Script und habe noch keinen Filter erstellt.Angular Filter für die Rückgabe von True False von API?

das ist mein, wenn sonst und es in html dies zeigt i wie i eventuatlly

<label>{{ $ctrl.myValu | truefalse}}</label> 

$onInit =() => { 
 
     let self = this; 
 

 
     this.siUser.current().then((userData) => { 
 
      let actingAsTenant = userData.user.apikey; 
 

 
      if (actingAsTenant) { 
 

 
       self.siTenant.current().then((tenant) => { 
 
        self.tenant = tenant; 
 
        
 
        ///starts 
 
        if (self.tenant.active == true) { 
 
         self.tenant.active = 'Active' 
 
        } 
 
        else if (self.tenant.active == false){ 
 
         self.tenant.active = 'Not Active' 
 
        } 
 
        //end 
 
        
 
       }, (err) => { 
 
        self.siAlertDialog.error(err.data.message) 
 
       }) 
 

 
      } 
 
     }, (err) => { 
 
      self.siAlertDialog.error('Error rendering tenant details'); 
 
     }); 
 
    }
<strong>{{$ctrl.tenant.active}}</strong>

+0

Ich mag einen Winkelfilter erstellen, so dass sie wiederverwendbar mein Code oben arbeiten. also möchte ich einen Filter für true oder false erstellen, der dann ungefähr so ​​aussieht

Antwort

1
For this you need to create filter. Try to with the given code 

<!DOCTYPE html> 
    <html lang="en"> 
    <head> 

     <title>Ristorante Con Fusion: Menu</title> 
      <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script> 
    </head> 
    <body> 

     <div ng-app="myapp" ng-controller="userController" > 
     {{ myValu | truefalse }} 

     <script> 
    var app = angular.module('myapp', []); 

    app.filter('truefalse', function(){ 
     return function(text){ 
      return text ? "Active" : "Not Active"; 
     } 
     }) 
app.controller('userController', function($scope) { 
     $scope.myValu = true; 
}); 
     </script> 
    </body> 
    </html> 
+0

Ich möchte einen Winkelfilter erstellen! , mein Code funktioniert. –

+0

so etwas wie dieses

+0

Dafür müssen Sie einen Filter erstellen. Versuchen Sie mit dem aktualisierten Code – Arun

0

Sie können mit Ternary Operator verwenden möchten:

JS

///starts 
     self.tenant.active == true ? 'Active' : 'Not Active'; 
//end 

ODER

In Angular Expression

<strong>{{ $ctrl.tenant.active ? 'Active' : 'Not Active' }}</strong> 
+0

mein Code funktioniert, ich möchte einen Angualr Filter erstellen, so kann ich nur den Filter anstelle der Codierung. etwas wie das

+0

Goes selbe für Filter (Funktion als Filter): '$ scope.truefalse = Funktion (Artikel) { Artikel zurückgeben? "Aktiv": "Nicht aktiv"; }; ' ** OR ** ' app.filter ('Truefalse', function() { return function (item) { Rückholeinzelteilrückseite 'Aktiv': 'Nicht aktiv'; } }) ; ' –

Verwandte Themen