問題描述:
<div ng-if="Object.getOwnPropertyNames(auth).length > 1"></div>
在ng-if中寫上條件Object.getOwnPropertyNames(auth).length > 1,div不顯示。在瀏覽器控制檯輸入Object.getOwnPropertyNames($scope.auth).length > 1打印的值爲true。
在頁面寫上:
<span ng-bind="Object.getOwnPropertyNames(auth).length > 1"></span>
顯示爲false。
解決方法:
將html代碼改爲:
<div ng-if="getObjPropertyLength(auth).length > 1"></div>
在controller中添加:
$rootScope.getObjPropertyLength = Object.getOwnPropertyNames;
錯誤原因:
Object.getOwnPropertyNames函數是javascript函數,在控制檯可以正常調用它。
但是由於Object.getOwnPropertyNames不在$scope域上,所以在html代碼中不能調用