javascript - 从 api 返回 true false 的 Angular 过滤器?

标签 javascript angularjs angular-filters angular-components angular-controller

所以我试图显示用户是否活跃。数据通过 bool 形式的 API 获取。所以它只会说用户是 true 或用户是 false。如果数据返回 true,我想显示“事件”,如果用户返回 false,则显示“不活动”。我所做的解决方案是一个简单的 if else 完成这项工作,但这是在整个应用程序中大量重用,我想制作一个 Angular 过滤器来完成此任务。 我是 Angular 和 Java 脚本的初学者,之前没有创建过过滤器。

这是我的 if else 并在 html 中显示它 这就是我想要使用的最终方式

<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>

最佳答案

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>

关于javascript - 从 api 返回 true false 的 Angular 过滤器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44607833/

相关文章:

php - 如何随机生成除法 a/b=c 的元素,其中 c 只有一位小数?

javascript - 手机不加载图片怎么办?

javascript - AngularJS:Ngtable 重新加载到旧数据

javascript - 在 AngularJS 1.4.8 中观察元素高度的正确方法是什么?

javascript - 如何在 webpack 中使用 angular ui-router?

arrays - 显示包含二维数组中唯一项目的列表

javascript - 将工作表复制到新电子表格,将单元格值添加到新电子表格名称的末尾

javascript - 使用 jQuery 渲染所有记录

javascript - 使用对象相同属性的多个值进行过滤

javascript - 将 angular js1.x 过滤器转换为 angular js 2.0 管道