我是 Angular JS 的新手。我最近遇到了这个奇怪的错误:
非法访问
(匿名函数)@angular.js:12416$get@angular.js:9203
(匿名函数)@angular.js:17785
completeOutstandingRequest@angular.js:5490
(匿名函数) @ angular.js:5762
我在互联网上搜索过这个错误,但它并不那么有名。
想法:
所以我有一个组的下拉选择。然后,当它的值发生变化时,groupSelOnChange()
将触发并填充类别的选择。类别的下拉选择取决于选择的group.id;
请注意,在我的本地机器上一切正常。当我在共享主机上上传应用程序时,我遇到了错误。
这些是我的模型
<button type="button" class="btn btn-primary"
ng-model="vm.groupSel"
bs-options="sel.id as sel.name for sel in vm.groups"
bs-select ng-change="vm.groupSelOnChange(vm.groupSel)"
placeholder="Choose your category">
Action <span class="caret"></span>
</button>
<button type="button" class="btn btn-primary"
ng-model="vm.categorySel"
bs-options="sel.id as sel.name for sel in vm.categories"
bs-select ng-change="vm.categorySelOnChange(vm.categorySel)"
placeholder="Choose">
Action <span class="caret"></span>
</button>
在我的控制器上
function groupSelOnChange(sel) {
searchObj['id'] = parseInt(sel);
$timeout(function(){
var found = $filter('filter')(vm.groups, searchObj, true);
return vm.categories = found[0].categories;
}, 500);
}
最初,我使用 laravel 及其“->with”在 vm.groups 中填充了工厂,因此类别将位于groups.categories
. 至于vm.categories
,我暂时将它设置为一个空数组,直到groupSelOnChange
被解雇。
当我尝试 console.log 时,非法访问错误显示在行上:
$filter('filter')(vm.groups, searchObj, true);
有人能帮我吗?