-1

问题描述

在我的应用程序中,我使用的是 JWT 身份验证。在令牌的有效负载中,我存储了用户 ID。登录后,或者当用户刷新页面并且仍然有一个有效的令牌时,我使用令牌中的 id 从我的后端检索有关用户的一些信息。我需要在依赖它们的应用程序的多个组件之间共享这些信息。

当前解决方案

我有一项服务可以检索这些信息并将其存储在一个对象中。依赖这些信息才能正常工作的组件会在其中注入此服务(服务是单例),并在其布局顶部有一个 *ngIf 以避免在信息不存在时显示任何内容。

可能的替代解决方案(Route Resolves)

我最近发现了路由解析守卫。这些对我有用吗?我可以实现一个警卫,要求在显示页面之前加载信息,并将其添加到所有需要它们的路由中。

  • 那些警卫像服务一样工作吗?
  • 这些可以注入组件中吗?他们是单身人士吗?
  • 如果我将包含用户信息的对象返回给路由(我会在第一次加载后将对象存储在路由保护中,以避免不必要的 api 调用),这将是保护内部存在的同一个对象还是副本?(如果我需要修改它)(如本教程中所述http://www.callibrity.com/blog/angular-2-route-resolves

谢谢

4

1 回答 1

0

希望我对这个问题的回答对你有帮助

问题:有没有办法在 Angular 4 服务注入组件之前解析数据?

答:https ://stackoverflow.com/a/47507341/6926892

于 2017-11-27T10:18:55.947 回答