首页 > 解决方案 > 有没有一种方法可以让“React Redux”提供者和消费者混合使用 - React 和非 React (Riot) 应用程序?

问题描述

目标:尝试将 Riot + Redux 应用程序分块迁移到 React + Redux 应用程序

挑战:在迁移的组件中访问 Redux 存储

这就是我的尝试

  1. 根 Riot(非反应)组件的证明存储:

    function stateProviderReact() {
      ReactDOM.render(
        <Provider store={store}>
          <ReactAppRoot/>
        </Provider>,
        document.getElementById('kickstartReactId')
      )
    }
    

    这里: ReactAppRoot:具有连接方法的虚拟/空容器,目的是对所有反应组件进行存储访问。

    kickstartReactId:

    <div id="kickstartReactId">
        <riot-page if={ isReady } shouldShowHeader={ isCapable } />
    </div>
    
  2. 访问 react 类组件中的 store,例如:

    const { config, storeProp, end } = this.props
    
    <ReactReduxContext.Consumer>
      {({ store }) => console.log({store})}
      <ReactComp storeProp={ storeProp } config={ config } end={ end } />
    </ReactReduxContext.Consumer>
    

任何线索将不胜感激!谢谢 !

标签: javascriptreactjsreduxriot.js

解决方案


推荐阅读