我有以下代码:
app.factory('Position', ['$timeout', function() {
var position = {
latitude: 44,
longitude: 26
};
console.log("Timeout started");
$timeout(function() {
position.latitude += 15;
position.longitude += 15;
}, 2000);
return position;
}]);
我在 Javascript 控制台中得到 $timeout not defined
。我没有正确注入(inject)服务的依赖项吗?
最佳答案
您没有注入(inject) $timeout
。应该是这样的。
app.factory('Position', ['$timeout', function($timeout) {
...
}]);
以这种方式声明可确保在缩小 JavaScript 代码时正确识别服务。有关这如何帮助缩小的更多信息,请参阅 A Note on Minification和 Declaring AngularJS Modules For Minification
如果缩小不在您的计划中(例如为了快速测试),您可以直接使用
app.factory('Position', function($timeout) {
...
});
关于javascript - AngularJS 应用程序中 $timeout 未定义错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19009370/