AngularJS - $timeout不是一个函数。

5

我尝试在run函数中注入$timeout,但是当我尝试调用它时,它会显示不是一个函数。为什么?

var mainApp = angular.module('mainApp', ['ngRoute', 'ngAnimate', 'ui.bootstrap', ngCookies']);

mainApp.run(['$rootScope', '$location', '$timeout'
        function ($rootScope, $location, $route, authService, $timeout) {
...
}]);

1
这段代码中有很多语法错误。请更正后尝试再次运行。 - simon
2个回答

19
mainApp.run(['$rootScope', '$location', '$timeout'
        function ($rootScope, $location, $route, authService, $timeout) {
...
}]);

应该是:

mainApp.run(['$rootScope', '$location', '$route', 'authService', '$timeout',
        function ($rootScope, $location, $route, authService, $timeout) {
...
}]);

在这里查看“数组注释”部分:

https://docs.angularjs.org/api/auto/service/$injector


3

当您使用依赖项名称注释函数时,出现的顺序应该匹配。

...
mainApp.run(['$rootScope', '$location', '$route', '$timeout', 'authService', 
        function ($rootScope, $location, $route, $timeout, authService) {
...
}]);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接