带有状态管理的角度新窗口

时间:2018-11-01 04:09:33

标签: angular angular5 ngrx ngrx-store ngrx-router-store

  • 问题陈述:

我有一个要求:以角度6打开一个新窗口,并在主窗口和次窗口之间建立双向通信。

  • 我尝试了什么

我创建了一个服务WindowRef以使用“ Window”角打开一个新窗口/选项卡。 我创建了一个@ ngrx / store系统来管理应用程序中的状态。 我可以在主窗口中管理任意数量的操作的应用程序状态,但是当我打开一个新窗口并尝试访问该状态时,它返回null。

如果我可以保持状态,则可以尝试使用ngStore调度操作,并尝试在主打开窗口和辅助打开窗口之间建立双向通信通道。

有人可以建议/指出我实现上述要求的方法吗?

1 个答案:

答案 0 :(得分:1)

ngrx/store在内存中起作用,这意味着如果刷新页面(或打开新标签),则存储中的当前状态将丢失。

如果要在两个窗口之间进行通信,则可以实现某种服务器端通信,例如firebase

没有服务器的另一种选择是将状态/动作存储在localStorage中,并听localStorage中的更改以在窗口中更新状态。