React Native page navigation

 Fist, You need to install them in your project

npm install @react-navigation/native @react-navigation/native-stack

npm install react-native-screens react-native-safe-area-context

Now, you need to wrap the whole app in NavigationContainer, Usually you'd do this in your entry file, such as index.js or App.js: 

import * as React from 'react';
import { NavigationContainer } from '@react-navigation/native';
import { createNativeStackNavigator } from '@react-navigation/native-stack';
import { StyleSheet, Text, View, Button } from 'react-native';

const Stack = createNativeStackNavigator();

const HomeScreen = ({ navigation }) => {
  return (
    <Button 
      title="Go to Jane's profile"
      onPress={() => navigation.navigate('Profile', { name: 'Jane'})} />
  )
}

const ProfileScreen = ( {navigation, route}) => {
  return <Text>This is {route.params.name}'s profile </Text>;
}

const MyStack = () => {
  return (
    <NavigationContainer>
      <Stack.Navigator>
        <Stack.Screen
          name="Home"
          component={HomeScreen}
          options={{ title: 'Welcome' }} />
        <Stack.Screen name="Profile" component={ ProfileScreen } />
      </Stack.Navigator>
    </NavigationContainer>
  )
}

export default MyStack;

相关文章

react 中的高阶组件主要是对于 hooks 之前的类组件来说的,如...
我们上一节了解了组件的更新机制,但是只是停留在表层上,例...
我们上一节了解了 react 的虚拟 dom 的格式,如何把虚拟 dom...
react 本身提供了克隆组件的方法,但是平时开发中可能很少使...
mobx 是一个简单可扩展的状态管理库,中文官网链接。小编在接...
我们在平常的开发中不可避免的会有很多列表渲染逻辑,在 pc ...