我的设置是ReactJS + Redux。
我有一个名为Gallery的组件:
我想从外部控制控制器中的选定选项卡(远在组件层次结构中)。我在 appState reducer中添加了一个变量,一个名为 setGallerySelectedTab 的动作创建者,我在 componentWillReviewProps 中收听新到的道具,并将它们与州的比较 selectedTab 。关于这种方法,我有两个未解决的问题:
有没有人知道如何在保持代码优雅的同时控制redux组件?
答案 0 :(得分:1)
像buy
这样的接缝应该是一个动作创建者,所有组件都可以使用。如果你将它与你的组件共存,因为一个依赖于另一个,你应该通过将它们共享的状态放在Redux存储中来解耦它们。
您还没有给出任何具体的代码示例,但您说您必须执行大量的setState。为什么呢?
渲染组件的方式应该仅取决于组件的道具和内部状态。如果道具中的更改需要更改状态,您可以从render方法中的props中计算这些状态方法,而不是将它们存储在状态中。