代码之家  ›  专栏  ›  技术社区  ›  merko

反应本机不变冲突错误

  •  0
  • merko  · 技术社区  · 6 年前

    我想在我的react原生应用程序中实现redux,我在app.js中导入了provider,但是当我在app.js中包装应用程序内容时 <Provider store={store}></Provider>

    Invariant Violation: Objects are not valid as a React child (found: object with .... object with keys {$$typeof, type, key, ref, props, _owner, _store}).

    我知道我不能在return方法中呈现对象,但我应该做的是,如何将应用程序连接到redux?

    import React, { Component } from 'react';
    
    import { Provider } from 'react-redux';
    import { createStore, applyMiddleware } from 'redux';
    import thunk from 'redux-thunk';
    
    // import reducer from './reducers/index';
    
    import TabNavigation from './navigation/TabNavigation';
    import StackNavigation from './navigation/StackNavigation';
    
    //const store = createStore(reducer, applyMiddleware(thunk));
    
    export default class App extends React.Component{
    
      render() {
        return (
        //<Provider store={store}>
            <TabNavigation />
          //</Provider>
          );
      }
    }
    

    它现在被注释掉了,并且可以工作了,如果我取消注释它就会出错。。。

    1 回复  |  直到 6 年前
        1
  •  0
  •   jsartisan    6 年前

    我看到这条线有点不对劲。

    //const store=createStore(reducer,applyMiddleware(thunk));

    第二个参数是初始状态,您将在那里传递中间件。看看这个能不能解决。