如何在 reduxjs 中设计独立模块?

Posted

技术标签:

【中文标题】如何在 reduxjs 中设计独立模块?【英文标题】:How to design standalone module in reduxjs? 【发布时间】:2016-01-13 23:29:56 【问题描述】:

假设我们有一个CountryPicker,它在挂载时会向服务器发送一个请求以加载国家列表然后显示它,用户可以选择一个国家,它会发送一个PICK_COUNTRY 操作并相应地更新用户界面。当它无法加载国家列表时,它也会显示一些有用的信息。这个组件的逻辑比较完整和独立。

我们的许多页面都使用此CountryPicker,显然我们希望重用该代码。

根据情况,我们有一个CountryPicker React 组件,一个CountryReducerCountryActions

问题是,当用户选择不同的国家/地区时,我们的一些使用CountryPicker 的页面想要做更多的事情(例如根据新国家/地区检索新数据)。

我能想到的解决方案是为CountryPicker 添加一个handleSelectCountry 属性,并在用户选择国家时使用新的国家有效负载调用它。

这对我来说有点难看,有没有更一致的做法?提前致谢。

【问题讨论】:

【参考方案1】:

您可以使用Store.subscribe 来观察组件状态的变化并从那里触发操作。

http://rackt.org/redux/docs/api/Store.html#subscribe

【讨论】:

以上是关于如何在 reduxjs 中设计独立模块?的主要内容,如果未能解决你的问题,请参考以下文章

如何在抽象派生类型中设计 PRIVATE OVERRIDABLE 过程?

如何在故事板中设计 UIScrollView

如何在 django rest 框架中设计 ArrayField?

如何在 Python 中设计一个类?

如何在java中设计JPA多态关系?

如何复制故事板中设计的 UIView?