如何解决为什么我得到“任何导航器都没有处理未定义有效载荷的操作导航”?
我正在尝试自己做一个小项目来了解 React-Native。
我有 2 个屏幕,我想通过按下按钮从 SplashScreen 导航到 HomeScreen。但它给了我一个错误。 我应该添加什么来消除错误?
这是代码 应用程序
import 'react-native-gesture-handler'; // react-navigation,must be on top
import React from 'react';
import { NavigationContainer } from '@react-navigation/native';
import { createStackNavigator } from '@react-navigation/stack';
import SplashScreen from "./src/screens/SplashScreen.js";
import HomeScreen from "./src/screens/HomeScreen.js";
const Stack = createStackNavigator();
const App = () => {
return (
// name is whatever you write
// initialRouteName is which screen you want as your initial
// when I add title,it will write it as title,not whats written in "name"
<NavigationContainer>
<Stack.Navigator initialRouteName="Intro" screenoptions={{title:"helllloo"}}>
<Stack.Screen name="Intro" component={SplashScreen} options={{title:"our intro"}} />
<Stack.Screen name="Home" component={HomeScreen} />
</Stack.Navigator>
</NavigationContainer>
);
};
export default App;
HomeScreen.js
import React from "react";
import { View,Text } from "react-native";
const HomeScreen = () => {
return(
<View style={{ flex: 1,alignItems: 'center',justifyContent: 'center' }}>
<Text>Home Screen</Text>
</View>
)
}
export default HomeScreen;
SplashScreen.js
import React from "react";
import { Text,View,Button } from "react-native";
import HomeScreen from "./HomeScreen";
const SplashScreen = ({ navigation }) => {
// without flex:1,it will center on that row,not on whole page
return (
<View style={{ flex: 1,justifyContent: 'center' }}>
<Text>Hello</Text>
<Button
title="Go to HomeScreen"
onPress = {() => navigation.navigate(HomeScreen)}
/>
</View>
)
}
export default SplashScreen;
解决方法
您在此处定义路线<Stack.Screen name="Home" component={HomeScreen} />
路线名称是"Home"
和路由组件 HomeScreen
导航调用 navigation.navigate(route name not route component)
所以用navigation.navigate(HomeScreen)
替换这个navigation.navigate("Home")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。