【发布时间】:2013-08-28 11:39:31
【问题描述】:
为了快速验证,我在开发过程中在浏览器控制台中测试了 AngularJS 服务。我将服务注入控制台的方式如this question 中所述或
var $inj = angular.injector(['myApp']);
var serv = $inj.get('myService');
serv.doSomething();
这与 AngularJS 1.0.7 完美配合。但是升级到1.1.5后,对于使用$http服务的服务就不再起作用了,不会发送xhr。
我已经测试过直接注入$http,它也不起作用。 AngularJS 变更日志似乎没有关于这个问题的记录。我可以知道这里有什么问题吗?
更新:
AngularJS 1.0.7 Uncompressed 版本好像不太好用。目前测试的工作版本只有 AngularJS 1.0.7 Minified。
它也适用于未压缩。
【问题讨论】:
-
如果您可以访问
$rootScope服务并调用$rootScope.$apply()是否有效?前几天我遇到了一个类似的问题,然后启动一个摘要循环是解决方法。 -
@BrandonTilley 效果非常好!那么
$http是否改为$q只能在摘要循环中解决?我想我应该更仔细地阅读更新日志。谢谢! -
是的,我想是的。我想也许我想象过它在没有消化循环的情况下工作,但你帮助我意识到我并没有失去理智(至少不是因为这个。:)
-
@BrandonTilley 我也认为它可以在没有摘要循环的情况下工作,至少不能用于发送 xhr。 :)
标签: angularjs angularjs-service