0

所以我想显示,天气用户是活跃或不活跃。数据通过布尔形式的api传递。所以它会简单地说用户是真实的或者用户是假的。如果数据返回true,我想显示'Active',如果用户返回false,我想显示'Not Active'。解决方案我做了一个简单的工作,但这是在应用程序中重复使用,我想做一个角度过滤器来完成这项任务。 我是一个角度和Java脚本的初学者,并没有创建过滤器。用于从api返回true false的角度过滤器?

这是我的if else,并显示在HTML 它这个我我要如何使用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

我想创建一个角度滤波器,所以它的可重复使用我的代码上面工作。所以我想创建一个true或false的过滤器,最终看起来像这样

回答

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

我想创建一个角度过滤器! ,我的代码正在工作。 –

+0

有些事情是这样的

+0

为此,您需要创建过滤器。尝试使用更新后的代码 – Arun

0

您可以使用三元运算符:

JS

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

OR

在角表达

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

我的代码工作,我想创建一个angualr过滤器,所以我可以只是过滤器,而不是编码。像这样的东西

+0

去过滤器(作为过滤器的功能):'$ scope.truefalse = function(item){ return item? '活跃':'不活跃'; };' ** **或' app.filter( 'truefalse',函数(){ 恢复功能(项目){ 退货项目 '活动': '不活动'; }} ) ;' –