当前位置: 首页 > 知识库问答 >
问题:

反应本机导航(未定义不是对象..this.props.navigation.navigate

郑狐若
2023-03-14

我有一个关于这个问题的反应原生导航的方式,我使用redux的麻烦。

包含正在此处导入的webservicecall组件从“”导入ListComponent/组件/列表组件';

包含操作ActionType导出常量服务\u挂起='服务\u挂起'等。

组件,在列表上呈现数据等

然后是减速器部分

存储绑定将在应用程序的初始点内完成,并传递给其他应用程序组件,如下所示。

import React, { Component } from 'react';
import { Provider } from 'react-redux';
import store from '../reducers/index';
import ServiceAction from '../actions/listserviceaction';
import { Container, Content, Picker, Button, Text } from "native-base";

    export default class RenderList extends Component {
        render() {
            return (
                <Provider store={store}>
                    <ServiceAction />
                </Provider>
            );
        }

}

现在,在加载组件之后,当我单击onPress={()=

共有3个答案

曹华荣
2023-03-14

要使用响应导航,您必须执行以下步骤:

1:npm i react导航--保存2:npm link react导航3:修改堆栈的顶级类,如下所示:

import page_1 from 'YOUR_PAGE1_PATH'
import page_2 from 'YOUR_PAGE2_PATH'
import { createStackNavigator } from 'react-navigation'

export default createStackNavigator({
      p1 : page_1 //remember the first modified shown first
      p2 : page_2
})

然后在第1页中,如果要导航到第2页:

onPress(()=> this.props.navigation.navigate('p2' , 'maybe other params'))

注意:您必须调用p1、p2而不是第1页或第2页!

唐繁
2023-03-14

要从一个屏幕导航到另一个屏幕,两个屏幕都应位于StackNavigator中。请出示stacknavigator和您尝试在其中导航的屏幕代码

王杰
2023-03-14

在您的ServiceAction中包含此。道具。导航类似以下内容:

<ServiceAction navigation={this.props.navigation}/>

因为道具。默认情况下,导航位于父组件上

在ServiceAction组件上,您将访问导航,如:

..
goToSignUp() {
   this.props.navigation.navigate('SignUp');
}
..

对我来说,以前也很困惑。干杯

 类似资料:
  • 问题内容: 我按照本教程https://reactnavigation.org/docs/intro/的操作 ,遇到了一些问题。 我每次都使用Expo Client应用程序而不是模拟器/模拟器来渲染我的应用程序。 我的代码如下所示。 我最初在“ ChatScreen”组件上方定义了“ SimpleApp” const,但这给了我以下错误: 路线“聊天”应声明一个屏幕。例如:…等 因此我将Simpl

  • 构建一个小的react应用程序,将地理位置(由浏览器确定为道具)传递给子组件。 第一个组件:app.jsx 该组件确定位置,保存要声明的纬度和经度,并通过props将该信息传递给Weather.jsx组件,该组件正在工作,如下图所示: 在Weather.jsx组件中,我尝试访问这些道具,得到未定义的或空的对象。 真的不知道问题是什么,因为react dev tools显示weather组件确实在传

  • 问题内容: React 在promise中没有定义。这是我的代码: 这是错误代码: 问题答案: 可能没有约束力。 如果您可以使用ES6语法,请尝试用箭头函数替换。它会自动绑定: 或手动绑定:

  • 问题内容: 无法完成这项工作,交叉检查了所有引用,但这没有帮助。这是该视图的所有代码。 我不确定我缺少什么,是否需要所有依赖项。 问题答案: 如果您以这种方式调用ListView组件,则它应该可以工作。NavigatorIOS已经向下传递参考(但仅一代/一代)。 但是,如果要从NavigatorIOS引用的组件的子组件中调用ListView组件,请尝试此操作。从NavigatorIOS引用的组件中

  • 我想为我基于Web的系统开发一个自定义应用程序,以与Android和IOS一起运行。我对在我的项目中使用反应原生/expo非常初学者。我想创建一个登录页面和仪表板,以便在登录后重定向。现在我在实现堆栈导航器时遇到问题,因为我只遵循了一个youtube教程。 这是我的App.js 现在,我想首先在这里导航我的登录名。js,它位于modules/login.js 如果我尝试运行我的代码,我在cmd中遇

  • 问题内容: 我正在尝试使用React Navigation和StackNavigator在我的应用程序中导航。 我有一个带有的按钮,我希望它将带我到,但出现以下错误: E ReactNativeJS:未定义不是对象(评估“ this.props.navigation.navigate”) 我需要添加什么才能使它正常工作? 在这里查看我的代码:https : //gist.github.com/ch

  • 问题内容: 有人可以解释一下为什么 this.setState 不是函数吗? 我不明白为什么我的代码有错误 谢谢 问题答案: 这是问题。使用。

  • 我试图通过反应路由器将道具从一个组件传递到另一个组件。当我试图从子组件获取道具时,我得到了这样一条消息。这是我的代码: Tracks.jsx: app.jsx: Album.jsx: