检查组件是否存在-不要第二次渲染相同的组件

时间:2019-04-19 08:44:53

标签: reactjs react-redux

我有一个组成部分,它包含另外两个组成部分。将为整个页面呈现第一个“ NotifyMessage”组件。仅在内部弹出窗口中显示第二个“ NotifyMessage”组件。这两个组件都订阅了redux存储,并从那里获取适当的消息和类型(成功或错误)。当前,如果发生某些情况-在两个位置(弹出窗口和整个页面)都呈现“ NotifyMessage”组件。分离渲染逻辑的最佳方法是什么?我只想在一个地方渲染一个组件。

2 个答案:

答案 0 :(得分:0)

创建一个标志状态,用布尔值说“ compAlreadyShown”。使用它有条件地在弹出窗口中显示隐藏。

答案 1 :(得分:0)

我已经在redux存储中添加了针对“弹出”案件的另一条消息,并将其作为子项传递给我常见的“ NotifyMessage”组件。目前,我在商店中有两个消息的真实来源,而不是一个。也许有更好的解决方案,但可以解决我的问题。