Javascript 在html内部,如何通过角度表达式检查任何变量是否为布尔值?
我的html中有一个元素,我必须检查变量的类型,无论它是否为布尔型Javascript 在html内部,如何通过角度表达式检查任何变量是否为布尔值?,javascript,html,angularjs,Javascript,Html,Angularjs,我的html中有一个元素,我必须检查变量的类型,无论它是否为布尔型 <button process-indicator="{{typeof(button.processIndicator) === 'boolean' ? 'modalProcess' : 'modalClose'}}"/> 这里的过程指示器是我的指令。但在我的例子中,它总是将值设置为“modalClose” 这里我做错了什么。因为typeof()是一个JavaScript函数,{}用于角度表达式执行,所以我们无
<button process-indicator="{{typeof(button.processIndicator) === 'boolean' ? 'modalProcess' : 'modalClose'}}"/>
这里的过程指示器是我的指令。但在我的例子中,它总是将值设置为“modalClose”
这里我做错了什么。因为typeof()是一个JavaScript函数,{}用于角度表达式执行,所以我们无法在角度表达式内执行JavaScript代码或函数
为了实现这一点,我们需要将结果值分配给一些$scope变量,以便在HTML中使用角度表达式
我们必须做一些类似于@anpsmn在他的小提琴中解释的事情。
即:
HTML:
<div ng-app="app" ng-controller="testCtrl">
<p process-indicator="{{checkType()}}">Value: {{checkType()}}</p>
angular.module("app",[])
.controller("testCtrl",['$scope', function($scope){
$scope.processIndicator = false;
$scope.checkType = function() {
return typeof($scope.processIndicator)==='boolean'? 'modalProcess' : 'modalClose';
};
}])
尝试在函数中执行逻辑并返回相应的指示符值。