我正在尝试在我的LoginService
中设置全局变量,以便我可以将其注入我的DriverService
。但是,无论我如何实现全局变量,它始终是undefined
或空字符串。
我做了一个 plunker,所以你可以实时检查它:PLUNKER
我尝试了setValue(this.login = value
(和getValue(return this.login
(的东西,现在我尝试了Subject和BehaviorSubject,但没有成功。
如何在一个服务中设置全局变量,以便可以在另一个服务中使用它?
谢谢
对于服务(通常是注射剂(,您必须记住的是,如果您希望在应用程序中使用相同的服务实例,则需要将它们添加到NgModule
providers
数组中,这将使相同的服务实例可用于该模块中的所有组件。在这种情况下,您当然想要确切的!
在每个组件中providers
-array 意味着您的所有组件都将拥有自己的服务实例,因此这意味着它们根本不共享相同的数据。
因此,唯一需要的是从组件中删除providers
数组,然后将它们应用于您的NgModule
:)
您的固定普伦克。