【问题标题】:React-native: undefined is not an object (evaluating '_this.props.navigation.navigate') onpressReact-native: undefined is not an object (evalating '_this.props.navigation.navigate') onpress
【发布时间】:2019-06-02 12:10:00
【问题描述】:
const AppStackLog = createDrawerNavigator(
  {

    Login: {
      screen: LogintStack,
      navigationOptions: (navOpt) => ({
        drawerLabel: ({focused}) =>(
        <TouchableOpacity style={[styles.button]} onPress={() => this.navigation.navigate('App')}>
         <Text><Icon

            size={17}
            name="log-in"
            family="Galio"
            color={focused ? 'white' : materialTheme.COLORS.MUTED} />
       <Text size={18}>        Logout</Text></Text>       
      </TouchableOpacity>
        ),
      }),
    },



  },
  Menu
);

export default createSwitchNavigator(
  {
    App: AppStack,
    Home: HomeStack,
    Auth:AppStackLog,
  },
  {
    initialRouteName: 'App',
  }
);

【问题讨论】:

    标签: javascript react-native navigation


    【解决方案1】:

    this 不会指向某个特定组件,它会指向定义此代码时this 等于的任何内容。相反,navOpt 参数具有您需要的内容:

    <TouchableOpacity style={[styles.button]} onPress={() => navOpt.navigation.navigate('App')}>
    

    【讨论】:

    • 你是说它没有用吗?请告诉我失败的原因。
    猜你喜欢
    • 1970-01-01
    • 2016-07-30
    • 2020-08-31
    • 2020-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-03
    • 1970-01-01
    相关资源
    最近更新 更多