TypeError: undefined is not an object (evaluating 'navigation.navigate') - React Navigation

佩德罗·恩里克

我正在使用 onPress 处理 TouchaleOpacity 以导航到名为“Infocli”的屏幕,但不起作用...... (onPress={() => navigation.navigate('Infocli')}) 该错误 TypeError: undefined 是不是对象(评估“navigation.navigate”)

应用程序.js

import React from 'react';
import { NavigationContainer } from '@react-navigation/native';
import { createStackNavigator } from '@react-navigation/stack';
import Home from './telas/Home';
import Login from './telas/Login';
import Clientes from './telas/Clientes';
import Pedidos from './telas/Pedidos';
import Produtos from './telas/Produtos';
import Sincro from './telas/Sincro';
import Cadastro from './telas/Cadastro';
import Infocli from './telas/Infocli';

export default function App() {

  const Stack = createStackNavigator();

  return (
    <NavigationContainer>
      <Stack.Navigator initialRouteName='Login'>
        <Stack.Screen options={{headerShown:false}} name='Home' component={Home}  />
        <Stack.Screen options={{headerShown:false}} name='Login' component={Login}  />
        <Stack.Screen options={{headerShown:false}} name='Clientes' component={Clientes}  />
        <Stack.Screen  name='Infocli' component={Infocli}  />
        <Stack.Screen  name='Pedidos' component={Pedidos}  />
        <Stack.Screen options={{headerShown:false}} name='Produtos' component={Produtos}  />
        <Stack.Screen options={{headerShown:false}} name='Cadastro' component={Cadastro}  />
        <Stack.Screen name='Sincro' component={Sincro}  />
      </Stack.Navigator>
    </NavigationContainer>
  );
}

屏幕出现错误

import React, {useState} from 'react';
import { TouchableOpacity, View, Image, Text, StyleSheet } from 'react-native';

export default function ListItem ({ data, navigation}) {


  return (

      <TouchableOpacity 
        onLongPress={() => {alert('FUNFOU !')}} style={styles.item}
        onPress={() => navigation.navigate('Infocli')}
      >
        <View style={{flexDirection:'row',justifyContent:'flex-start', alignItems:'center'}}>
          <Image source={require('../../assets/spartan.png')} style={styles.itemPhoto} />
          <View style={styles.itemInfo}>
            <Text style={styles.itemP1}>{data.cod} - {data.name}</Text>
            <Text style={styles.itemP2}>{data.cnpj_cpf}</Text>
            <Text style={styles.itemP2}>{data.cidade} - {data.estado}</Text>
          </View>
        </View>
      </TouchableOpacity>
      
  );
};

在此处输入图片说明

雨果·布努阿

我认为它不是您可以导航到的页面,因为它不在您的导航器列表中。因此,当您在页面中集成组件“ListItem”时,您可能只需要将“导航”作为属性传递

编辑:(见下面的评论)

您需要将“navigation”作为参数传递给您的组件,以便使用“ListItem”中的“navigation”道具。

目前您没有通过它,这就是为什么您的道具“导航”为空并且您收到错误的原因。你应该做 :

<ListItem data={item} navigation={navigation} />

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

TypeError: undefined is not an object (evaluating 'navigation.navigate') React Native

React Native: TypeError: undefined is not an object (evaluating 'this.props.navigation.navigate') 当点击按钮时。为什么?

React Native:TypeError:undefined不是一个对象(评估'this.props.navigation.navigate')

react native TypeError: TypeError: undefined is not an object (evaluating'_this.state.cartAmount')

React Redux - undefined 不是评估 this.props.navigation.navigate 的对象

React Native:undefined 不是对象(评估“props.navigation.navigate”)

TypeError : Object (...) is not a function react native stack navigation

TypeError: undefined is not an object (evaluating style.width) react native

TypeError:navigation.navigate不是函数

可能的未处理的承诺拒绝(id:0):TypeError:undefined不是对象(评估'_this.props.navigation.navigate')

React Native:undefined 不是一个对象(评估'_this2.props.navigation.navigate')

undefined不是对象(评估'_this2.props.navigation.navigate')-React Native

React-native:undefined不是对象(评估'_this3.props.navigation.navigate')

Undefined 不是一个对象(评估'this.props.navigation.navigate')React native

Undefined 不是对象 - React Navigation

TypeError: undefined is not an object (evaluating 'this.props.location') [ReactJS + react-router-dom V4]

Expo/React Native 错误 - TypeError: undefined is not an object (evaluating 'string.toLowerCase')

React Navigation V2:navigation.push和navigation.navigate之间的区别

undefined 不是一个对象 navigation.navigate

例外:undefined不是对象(评估“ navigation.navigate”)

undefined不是onPress的对象(评估this.props.navigation.navigate)

TypeError:undefined不是一个对象(正在评估“ navigation.push”)React Native

React Native,navigation.navigate不是一个函数

未定义(评估'this.props.navigation.navigate')React Native

无法在React Navigation中读取未定义的属性'navigate'

React Native props.navigation.navigate不是对象

获取TypeError FlatList React Navigation 5

react-navigation:undefined不是一个对象(评估'Object.keys(routeConfigs)')

navigation.navigate不是函数