angular - 带有状态管理的 Angular 新窗口
问题描述
- 问题陈述:
我有一个要求:在 Angular 6 中打开一个新窗口,并在主窗口和辅助窗口之间建立双向通信。
- 我试过的
我创建了一个服务 WindowRef 以使用角度“窗口”打开一个新窗口/选项卡。我创建了一个@ngrx/store 系统来管理应用程序中的状态。我可以在主窗口中管理任意数量的操作的应用程序状态,但是当我打开一个新窗口并尝试访问该状态时,它返回 null。
如果我可以保持状态,我可以尝试使用 ngStore 来调度操作,并尝试在主要和次要打开的窗口之间建立双向通信通道。
有人可以建议/指出一种实现上述要求的方法吗?
解决方案
ngrx/store
在内存中工作,这意味着如果您刷新页面(或打开新选项卡),商店中的当前状态将丢失。
如果你想在两个窗口之间进行通信,你可以实现某种服务器端通信,例如firebase。
没有服务器的另一种选择是将状态/操作存储在您的中localStorage
并监听更改localStorage
以更新窗口中的状态。
推荐阅读
- azure-devops - 完成后如何删除 Azure 管道工件?
- sh - Shell 变量扩展:在一个变量中存储多个包含空格的命令参数
- charts - 如何在 Anylogic 中的任何图表中增加图表标题和轴刻度值和标题
- python - 使范围列表在指定值处开始和结束的 Pythonic 方法,这要求第一步小于列表其余部分的步骤
- c++ - Char Array Client.Print Arduino
- node.js - 是否推荐升级 npm for node LTS?
- reactjs - 如何在CKEditor 5中实现突出显示一段文本并显示替代模式
- ruby-on-rails - 我的浏览器中未显示带有 webpack 引导程序的 Rails 6 模式
- java - 部署后beantalk(AWS)中没有响应的按钮
- java - Jackson XMLWrapper 未能将此 xml 反序列化为 pojo?