Angular5-无法从窗口存储事件中触发控制器方法

时间:2018-07-17 10:26:21

标签: angular local-storage angular2-localstorage

我正在使用Angular5,但无法从窗口存储事件中触发控制器方法。

在初始化控制器初始化时,我声明了一个窗口存储事件,如下所示:

window.addEventListener('storage', this.messageReceive);

现在,当触发此事件时,由于我们在其他某个控制器上,因此我们无法使用该控制器的任何方法。

您能建议我们需要做什么吗?

1 个答案:

答案 0 :(得分:0)

这就是为什么angular会阻止您使用窗口属性或直接操作DOM的原因。您的尝试就像将常规click侦听器绑定到DOM对象并尝试执行某些组件功能一样。

直接的解决方案是在浏览器功能和angular-localstorage-observablesngx-webstorage之类的角度之间使用适当的层。如果您想要或必须自己实现该层,我建议您检查他们的github仓库以检查源代码。