[英]react-navigation TypeError undefined error
我正在使用本机反应,现在当我尝试安装加载组件时出现以下错误。
类型错误:未定义不是对象(评估“this.props.navigation.navigate”)
这是我的代码
import React from 'react';
import SplashScreen from 'react-native-splash-screen';
import Loading from '../../components/loading/Loading';
import { connect } from 'react-redux';
class LoadingContainer extends React.Component {
componentDidMount() {
setTimeout(() => {
SplashScreen.hide();
}, 300);
let initRoute;
if (this.props.auth.user) {
initRoute = 'App';
} else {
initRoute = 'Login';
}
this.props.navigation.navigate(initRoute);
}
render() {
return <Loading navigation={this.props.navigation} />;
}
}
const mapStateToProps = state => ({
auth: state.auth,
});
export default connect(mapStateToProps, null)(LoadingContainer);
我是第一次在使用 react-navigation 时遇到这个错误,我使用的是 react navigation 的 2.11.2 版本
为什么不使用 react-navigation v4.x?
对于 v2.x,您的导航配置可能是这样的
import React from 'react';
import { createStackNavigator } from 'react-navigation';
import LoadingContainer from '../containers/LoadingContainer/LoadingContainer';
import Login from '../containers/LoginContainer/Login';
const AppStack = createStackNavigator(
{
Loading: LoadingContainer,
Login: Login,
},
{
initialRouteName: 'Loading',
}
);
export default class App extends React.Component {
render() {
return <AppStack />
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.