Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/473.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在html内部,如何通过角度表达式检查任何变量是否为布尔值?_Javascript_Html_Angularjs - Fatal编程技术网

Javascript 在html内部,如何通过角度表达式检查任何变量是否为布尔值?

Javascript 在html内部,如何通过角度表达式检查任何变量是否为布尔值?,javascript,html,angularjs,Javascript,Html,Angularjs,我的html中有一个元素,我必须检查变量的类型,无论它是否为布尔型 <button process-indicator="{{typeof(button.processIndicator) === 'boolean' ? 'modalProcess' : 'modalClose'}}"/> 这里的过程指示器是我的指令。但在我的例子中,它总是将值设置为“modalClose” 这里我做错了什么。因为typeof()是一个JavaScript函数,{}用于角度表达式执行,所以我们无

我的html中有一个元素,我必须检查变量的类型,无论它是否为布尔型

<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';
}; 

}])

尝试在函数中执行逻辑并返回相应的指示符值。