【发布时间】:2014-02-21 10:41:52
【问题描述】:
我有一个“userSessionDataService”。这会从服务器获取用户的详细信息(仅一次)。
我希望在调用服务时可以访问用户数据,但不需要在 promise 上调用 .then()。
据我了解,Angular 不支持这一点。服务的调用者必须始终使用承诺来访问异步加载的数据(例如通过 ajax)。
【问题讨论】:
-
我同意这是不可能的。我不知道这是您真正想要的设计 - 导致您的应用程序在等待异步资源的基本级别上阻塞。
-
我遇到了同样的问题。我解决了它,并正在研究我的答案。给我几分钟。
-
更容易提供这个链接:stackoverflow.com/questions/16286605/…
-
我所做的不同。当他们登录时,我将用户数据存储在
localStorage中。启动时,我检查它是否在 localStorage 中并且它没有过期。如果它丢失或过期,我在module().run()中使用$location.path('/SignIn');如果您仍然感兴趣,我可以在答案中拼凑出我是如何做到的。 -
@Nathaniel Johnson 我可以从上面的链接中了解到,我需要在每条需要 userSessionDataService 的路由中使用解析?这意味着无处不在。
标签: angularjs service promise inject