我有控制器并在$ timeout函数内:
.controller('MapCtrl', ['$scope', '$http', '$log', '$timeout', function ($scope, $http, $interval, $log, $timeout) {
$timeout(function () {
$scope.marker.coords = {
latitude: 42.1451,
longitude: -100.6680
};
$scope.dynamicMoveCtr++;
$timeout(function () {
$scope.marker.coords = {
latitude: 43.1451,
longitude: -102.6680
};
$scope.dynamicMoveCtr++;
}, 2000);
}, 1000);
}]);
为什么它会给我错误:
typeError:$ timeout不是函数 在新的(angularmy.js:2879) at Object.e [as invoke](angular.min.js:36) 在$ get.x.instance(angular.min.js:75)
在另一个控制器功能$timeout
工作正确
答案 0 :(得分:1)
.controller('MapCtrl', ['$scope', '$http', '$log', '$timeout', function ($scope, $http, $interval, $log, $timeout)
字符串参数与传递给函数的参数不匹配。
'$scope', '$http', '$log', '$timeout'
($scope, $http, $interval, $log, $timeout)
答案 1 :(得分:1)
您忘记注入$ timeout参数。
修复如下:
.controller('MapCtrl', ['$scope', '$http','$interval', '$log', '$timeout', function ($scope, $http, $interval, $log, $timeout) {