2016-10-22 83 views
0

现在我们拥有构建完整SPA所需的一切(路由:react-router,async:sagas,state:redux等)。架构和创建这种应用程序的过程对我来说很简单,但是当我需要创建具有几个独立模块的网站并且他们需要彼此交流时,问题就开始了。例如,在Facebook上有几个地方可以告知用户他有新消息,或者当我们从用户列表中单击用户时创建新的聊天室。使用React开发工具,我们可以看到创建了新的独立组件。在SPA中有一个根组件,其中的全部内容都在其中。所以我的问题是如何解决这种问题?即创建小模块并提供它们之间的通信?模块化ReactJS应用程序 - 混乱

回答

0

您可以使用Redux。 Redux允许您使用全球商店,其功能类似于React Component。您可以随时随地更新全球商店,并且每当商店更新时,REDX会更新其他组件。

Redux on Github

+0

终极版商店连接到连接到一些根组件供应商,所以这是不是这样的,因为在这种方法中一切都必须是此提供我想有几个不分层模块,而不是内部。想象一下,你有一个网站,你可以下注一些体育赛事,为了简单起见,我们假设我们有用户面板存储当前的用户余额和简单的框,你可以选择事件和下注。网站不是SPA(其他所有内容都由服务器提供),您只需要使用ReactJS来完成这两件事情,即更新用户帐户余额和下注事件。这是一个问题 –

+0

但使用一个全局父项的问题是什么?如果您不想使用全局存储,请告诉我'window'全局变量和全局存储之间有什么区别,在这两种情况下,您都有一个通用的单一全局父项。 –

+0

他们之间只有两点不同。 1)与'window'对象不同,Redux实现'Observer'设计模式。 2)Redux Store是一个“不可变”的对象。 –