1

我目前正在将我的代码库从 react-navigation 迁移到 RNN。对于之前的实现,我在 Provider 组件下多了两个封装的组件。架构如下图

<Provider>
  <WebsocketManager>
     <ConnectionManager>
        <App> (render react-navigation navigator inside)
     </ConnectionManager>
  </WebsocketManager>
</Provider>

但是现在如果我理解和实现正确的话,RNN的新架构应该是这样的

<Provider>
  <Screen 1 />
</Provider>

<Provider>
  <Screen 2 />
</Provider>

这些屏幕共享同一个 redux store。但是在这里嵌入我的两个以上组件的最佳方法是什么?请注意,我需要这些屏幕使用与单例方式相同的实例。如果我使用 HOC 包装屏幕 1 和屏幕 2...,每个屏幕都将被新的管理器实例包装。如果没有要控制的全局标志,某些逻辑(如 open ws)可能会运行多次。我想知道是否有一种 RNN 方法来处理这种情况以及最好的设计模式是什么。

4

0 回答 0