请教Mobx-react store多级存储的问题

在mobx-react的使用描述中,会说明在根节点下Provider中注册store,以达到解决全局变量共享的问题,例如
class App extends React.Component{

render(){
    return (
        <Provider store={AppStore}>
            <Router/>
        </Provider>
    )
}

}
但是如果既需要全局变量,也需要子业务需要做到非全局变量共享,(可以认为是多个局部内的全局变量需求)但是肯定又不是用state(因为子业务下也会拆分很多模块,一个state在多页面传递很蠢),mobx能不能在子业务中挂载多个provider呢,例如
class App extends React.Component{

render(){
    return (
        <Provider store={TotalStore}> 
          <Router>
              <PageA>
                  <Provider store={AStore}>       
                  </Provider>
               </PageA>
          <PageB>
              <Provider store={BStore}>       
              </Provider>
           </PageB>
          <PageC>
              <Provider store={CStore}>       
              </Provider>
           </PageC>
         </Router>
        </Provider>          
    )
}

}
这样在路由进行跳转后可以自动初始化,离开页面自动销毁变量。如果是一个全局根节点还需要每次去手动维护变量的初始化,以及考虑是否会有可能的内存泄露问题。
或者说如果有这样的需求,该怎样处理数据流呢?

阅读 894
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题