我有以下代码:
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; }]);
我进入$timeout not defined了Javascript控制台。我没有正确注入服务的依赖项吗?
$timeout not defined
您没有注射$timeout。应该如下。
$timeout
app.factory('Position', ['$timeout', function($timeout) { ... }]);
这样声明可以确保在最小化JavaScript代码时正确识别服务。有关如何帮助缩小的更多信息,请参见关于缩小和为缩小声明AngularJS模块的说明
如果您的计划中没有缩小功能(例如进行快速测试),则只需
app.factory('Position', function($timeout) { ... });