Javascript angularjs如何在ng if函数中处理承诺
在angularjs中,我在元素中使用Javascript angularjs如何在ng if函数中处理承诺,javascript,angularjs,Javascript,Angularjs,在angularjs中,我在元素中使用ng show=“isChecked('ID')”。并尝试访问另一个控制器中生成的$rootscope.array。我的职能是 $scope.isChecked = function(ID) { console.log( $rootScope.IsCntrChecked); var mycheck = $rootScope.IsCntrChecked.find(function(v) { return
ng show=“isChecked('ID')”
。并尝试访问另一个控制器中生成的$rootscope.array。我的职能是
$scope.isChecked = function(ID) {
console.log( $rootScope.IsCntrChecked);
var mycheck = $rootScope.IsCntrChecked.find(function(v) {
return v.CntrCode == ID;
}).CntrChk;
console.log(mycheck);
return mycheck;
};
它工作正常,但在控制台中,当$rootScope.iscentrchecked未定义时,对于前几个调用,我确实会收到错误消息“TypeError:无法读取未定义的'find'属性”。我试图处理函数中的承诺,但这是一个错误
[$rootScope:infdig]已达到10$digest()迭代次数。流产
请建议我用简单的方法处理这个错误。
谢谢在尝试查找
中的内容之前,只需检查$rootScope.iscontrchecked
是否存在:
if(!$rootScope.IsCntrChecked)
return false;
只需检查$rootScope.iscontrchecked
是否存在,然后再尝试查找其中的内容:
if(!$rootScope.IsCntrChecked)
return false;
在运行函数中使用默认值初始化$rootScope.iscontrchecked
,在运行函数中使用默认值初始化$rootScope.iscontrchecked