【发布时间】:2016-10-14 23:00:34
【问题描述】:
我有一个 React-redux 应用程序,其中包含存储、操作、reducer 和所有这些东西。所有工作都根据需要。 但是有一个小问题。通过单击一个按钮,我必须显示一个 IFrame,其中加载了另一个 React 应用程序(非常过时的 React)。 即使在这里,所有工作都可以根据需要进行。 不起作用的是捕获从过时的应用程序触发的事件。 触发事件我使用了这样的代码
window.parent.$(window.parent.document).trigger('HIDE_QUOTE_EDIT', {sender: 'quote-edit'});
我尝试在主应用中订阅它
$(document).on('HIDE_QUOTE_EDIT', () => {console.log('Caught hide quote edit');});
但这从来没有按需要工作。
- 处理这种情况的最佳方法是什么?
- 假设我以某种方式捕获了此事件,如何获取对
dispatch对象的引用以便调用操作?
谢谢
附:我知道这不是一个正确的设计,但我必须使用我拥有的任何东西。
【问题讨论】:
-
首先弄清楚如何发送事件并从 iframe 接收它们。这是一个与在 react/redux 中处理外部事件的最佳实践不同的问题,因此请为此创建另一个问题。 -1 来自我,对不起。
标签: javascript jquery reactjs react-redux