当我使用 ionic run 时,我的应用程序在启动时路由到 discovery.html,它会调用 DiscoverCtrl 并引发错误:
Error: [ng:areq] http://errors.angularjs.org/1.4.3/ng/areq?p0=DiscoverCtrl&p1=not%20a%20function%2C%20got%20undefined
但是当我路由到 AnsweredCtrl 时,它会正确加载并且没有问题。 此外,这种情况仅发生在低于 api 级别 22 的版本中。当我在更高版本中运行该应用程序时,它运行顺利并且不会抛出任何错误。我无法确定这是 ionic 问题还是构建应用程序时的问题。我尝试减少 config.xml 中的 minSdk 但这也没有帮助。也许我犯了一个菜鸟错误。预先感谢您的帮助
discover.controller.js
(function () {
'use strict';
angular
.module('app.discover')
.controller('DiscoverCtrl', DiscoverCtrl);
DiscoverCtrl.$inject = ['$scope', 'ConnectivityMonitor', 'serverPath', '$stateParams', 'EndUser', '$timeout', '$compile', 'localStorageService', '$ionicHistory', 'cdnPath'];
function DiscoverCtrl($scope,ConnectivityMonitor,serverPath,$stateParams,EndUser,$timeout,$compile,localStorageService,$ionicHistory,cdnPath) {
var vm = this;
ConnectivityMonitor.startWatching();
$scope.somefunction = function(){};
}
})();
answered.controller.js
(function () {
'use strict';
angular
.module('app.answered')
.controller('AnsweredCtrl', AnsweredCtrl);
AnsweredCtrl.$inject = ['ConnectivityMonitor','serverPath','$scope','QuestionService','$timeout','$compile', 'localStorageService', 'cdnPath', 'QuestionListService'];
function AnsweredCtrl (ConnectivityMonitor,serverPath, $scope, QuestionService, $timeout, $compile, localStorageService, cdnPath, QuestionListService) {
var vm = this;
$scope.somefunction = function(){};
}
})();
app.js
angular.module('exy', [
'app.core', // contains external services
'app.discover',
'app.answered'
])
最佳答案
好吧,我发现了问题,在我的一个函数中,我在 for 循环中使用了“let”,所以旧的 webview 不支持 let,删除了它并修复了。
关于javascript - 应用程序在 Android 版本 4.4.2 上运行时中断,抛出错误 : [ng:areq],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36908683/