所以我试图显示用户是否活跃。数据通过 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/