Javascript 如何修复TypeError:undefined不是一个对象(评估';state.routes';)

Javascript 如何修复TypeError:undefined不是一个对象(评估';state.routes';),javascript,reactjs,react-native,expo,redux-persist,Javascript,Reactjs,React Native,Expo,Redux Persist,我遵循react导航文档,react导航redux助手文档,但总是抛出这个错误。此外,如果我删除persistGate,错误会得到修复,但我需要保留一些数据,这样就不应该是一个选项 这是我的商店 import { createStore, applyMiddleware } from 'redux'; import { persistStore, persistReducer } from 'redux-persist'; import { AsyncStorage } from 'react-

我遵循react导航文档,react导航redux助手文档,但总是抛出这个错误。此外,如果我删除persistGate,错误会得到修复,但我需要保留一些数据,这样就不应该是一个选项

这是我的商店

import { createStore, applyMiddleware } from 'redux';
import { persistStore, persistReducer } from 'redux-persist';
import { AsyncStorage } from 'react-native';
import { createReactNavigationReduxMiddleware } from 'react-navigation-redux-helpers';

import Reducer from './reducers/index';

const persistConfig = {
    key: 'root',
    storage: AsyncStorage,
    blackList: [],
};

const AppReducer = persistReducer(persistConfig, Reducer);

const middleware = createReactNavigationReduxMiddleware(
    (state) => state.navigation,
);

export const store = createStore(AppReducer, applyMiddleware(middleware));
export const persistor = persistStore(store);
这是我的app-with-state.js

import AppNavigator from './AppNavigator';

const AppNavigatorWithState = createReduxContainer(AppNavigator);

class ReduxNavigation extends React.Component {
    render() {
        const { state, dispatch } = this.props;

        return <AppNavigatorWithState navigation={state} dispatch={dispatch} />;
    }
}

const mapStateToProps = (state) => ({
    state: state.navigation,
});

export default connect(mapStateToProps)(ReduxNavigation);
从“/AppNavigator”导入AppNavigator;
const-AppNavigator-WithState=createReduxContainer(AppNavigator);
类ReduxNavigation扩展了React.Component{
render(){
const{state,dispatch}=this.props;
返回;
}
}
常量mapStateToProps=(状态)=>({
state:state.navigation,
});
导出默认连接(MapStateTops)(ReduxNavigation);
这是我的AppNavigator.js

const Main = createStackNavigator(
    {
        Home: Home,
        Movie: Movie,
        Category: Category,
    },
    {
        defaultNavigationOptions: {
            header: Header,
        },
    },
);


const TabNavigator = createBottomTabNavigator(
{
        Home: {
            screen: Main,
            navigationOptions: {
                tabBarIcon: <Icon icon='I know its too late but it should help others :))

In your mystore.js

const middleware = createReactNavigationReduxMiddleware(
    (state) => state.navigation,
)
const Main=createStackNavigator(
{
家:家,
电影:电影,,
类别:类别,,
},
{
默认导航选项:{
标题:标题,
},
},
);
const TabNavigator=createBottomTabNavigator(
{
主页:{
屏幕:主,
导航选项:{

tabBarIcon:我知道为时已晚,但它应该能帮助其他人:)

在您的mystore.js中

const middleware=createReactNavigationReduxMiddleware(
(state)=>state.navigation,
)
应该是这样的:

const middleware=createReactNavigationReduxMiddleware(
(state)=>state.router,
)