微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么我得到“任何导航器都没有处理未定义有效载荷的操作导航”?

如何解决为什么我得到“任何导航器都没有处理未定义有效载荷的操作导航”?

我正在尝试自己做一个小项目来了解 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 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?