是否可以在 React 应用程序之间进行通信?

问题描述 投票:0回答:3

我的项目是三个react应用程序的旅程,我想使用从应用程序1到应用程序2和应用程序2到应用程序3的一些数据。

如果要传递的数据很小,我在第二个应用程序的url中的查询参数中传递它。

如果数据很大或私有,我计划将其作为帖子发送,应用程序 2 会收到它。

React 应用程序之间是否有更好的通信方式? 我可以将每个 reach 应用程序作为一个库,将其数据公开给应用程序 2 吗?

reactjs flux reactjs-flux
3个回答
3
投票

您可以使用 postMessage(MDN 链接),现在每个浏览器都支持它。

它是一个跨域的、基于事件的消息传递系统,直接在浏览器中运行,具有熟悉的 API。

在您的目标页面上对消息采取行动之前,请务必检查消息的来源!


0
投票

如果您在两者之间加载新页面,那么通过帖子发送到服务器是个好主意。

如果你不是那么你可以将它设置为一些全局位置,如

window.application1Data = { data: data };


0
投票

React web 应用程序之间的通信在 2016 年我发布这个问题时并不容易。

现在,多个 React 应用程序,包括 React Native 应用程序,可以通过使用 Monorepo 在一个公共

libs
中共享 Redux 存储、公共实用程序、公共字体文件和公共资源来轻松地进行通信。为此,我使用了
Nx
monorepo。

© www.soinside.com 2019 - 2024. All rights reserved.