跨Angular组件分布数据的最佳实践?

我有一个很大的Angular SPA,它带有路由器出口和不同级别的组件。 当前,我的应用程序支持不同的区域,其中区域的更改是通过本地存储完成的。因此,当用户更改区域时,应用程序仅更新本地存储中的区域值并重新加载应用程序(window.reload)。

该解决方案可以正常工作,但容易出错,因为我需要始终从localstorage读取区域,并且它对Angular Universal不友好。

您能否建议最好的解决方案来存储区域或跨所有组件访问它? 我需要对主题使用服务吗? 还是使用类似于Redux的RxJS?

请帮忙