从子组件响应本机导航

问题描述 投票:0回答:3

我正在尝试在屏幕之间实现简单的导航,但出现此错误:

[Undefined is not an object 'this.props.navigate'] >>

AppNavigator.js

let AppNavigator = createStackNavigator({
  Signup: 
  { screen: SignupScreen, 
    navigationOptions: {
      header: null
    }

  },
  Login: { screen: LoginScreen,
    navigationOptions: {
      header: null
    } 
  },
},{
  initialRouteName: "Signup"
});

SignupScreen.js

<View>
 <SignupForm/>
</View>

SignupForm.js

const { navigate } = this.props.navigation;
<Text onPress={() =>
       navigate('Login')
}>
 ¿Allready have an account? Sign in
</Text>

我想问题是,在子组件情况下,还有其他事情要做。请帮助。

我正在尝试在屏幕之间实现简单的导航,但是出现此错误:未定义不是对象'this.props.navigate'AppNavigator.js让AppNavigator = createStackNavigator({...

reactjs react-native react-navigation react-native-navigation
3个回答
1
投票
您应该将navigation传递给SignupForm。在下面选择2个解决方案之一

0
投票
如果使用单独的组件,则必须使用withNavigation,请参阅有关withNavigation的文档:here

0
投票
在其他地方使用AppNavigator之前,您可能会错过将其包裹在NavigationContainer中的情况。
© www.soinside.com 2019 - 2024. All rights reserved.