React Native:React 导航 StackNavigator 不起作用。收到错误:“未定义不是对象(评估'this.props.navigation.navigate')”

2023-12-05

我正在尝试使用 React Navigation 和 StackNavigator 在我的应用程序中导航。

我有一个按钮onPress={() => navigate('DetailsScreen'),我希望这能带我去DetailsScreen,但我收到以下错误:

E ReactNativeJS:未定义不是一个对象(评估'this.props.navigation.navigate')

我需要添加什么才能使其正常工作?

在这里查看我的代码:https://gist.github.com/chapeljuice/bef4b0a4dedef2994c81f3634b81aa43


您的组件不支持导航(它不是屏幕)。因此,这里有两种常见的解决方案:

使用父级

从父组件传递导航属性(如果它是屏幕)。

<Card navigation={navigation} />

这是最简单的解决方案。

使用高阶组件withNavigation

如果父组件不支持导航,或者它太复杂而无法传递 props,则可以使用 HOCwithNavigation:

export default withNavigation(connect(mapStateToProps)(Card))

然后您将拥有navigation道具可用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

React Native:React 导航 StackNavigator 不起作用。收到错误:“未定义不是对象(评估'this.props.navigation.navigate')” 的相关文章

  • 在 ES5 中创建自定义元素 v1,而不是 ES6

    现在 如果您严格遵循自定义元素规范 v1 https html spec whatwg org multipage custom elements html custom elements 无法在不支持类的浏览器中使用自定义元素 有没有办法
  • 使用ajax发送表单数据

    我想用 ajax 以表单形式发送所有输入 我有一个这样的表单
  • 应该使用encodeURI吗?

    javascript 的encodeURI 函数有任何有效用途吗 据我所知 当您尝试发出 HTTP 请求时 您应该 完整的 URI 您想要放入 URI 中的某些片段 可以是 unicode 字符串或 UTF 8 字节序列 在第一种情况下 显
  • 如何将 scala 列表转换为 javascript 数组?

    有更简单的方法吗 document ready function var jsArray if scalaList null for id lt scalaList jsArray push id 很简单 如下所示 import play
  • React 无法识别 DOM 元素上的 `isActive` 属性 - styled-components

    我有以下内容svg我传递道具的组件 import React from react export default props gt
  • ECMAScript 6 类中的 getter 和 setter 有何用途?

    我对 ECMAScript 6 类中 getter 和 setter 的意义感到困惑 什么目的 下面是我参考的一个例子 class Employee constructor name this name name doWork return
  • codePointAt 和 charCodeAt 之间的区别

    有什么区别String prototype codePointAt and String prototype charCodeAt 在 JavaScript 中 A codePointAt 65 A charCodeAt 65 从 MDN
  • Durandal SPA 与打字稿有关的问题

    我使用 TypeScript 1 8 将我的 durandal SPA 应用程序从 VS 2012 更新到 VS 2015 它将生成 JavaScript ECMA5 我解决了所有构建错误 但我无法修复一个名为 return 语句只能在函数
  • 如何使用 JavaScript 压缩文件?

    有没有办法使用 JavaScript 来压缩文件 例如 在雅虎邮件中 当您选择下载电子邮件中的所有附件时 它会被压缩并下载到单个 zip 文件中 JavaScript 能够做到这一点吗 如果是这样 请提供一个编码示例 我发现这个图书馆叫js
  • AngularJS 服务并承诺最佳实践

    我有一个 AngularJS 应用程序services 调用 http资源并返回promise我在控制器中解决了这个问题 这是我正在做的事情的示例 app service Blog function http q var deferred
  • 从反应本机SectionList中的节项访问节数据

    我需要访问有关反应本机SectionList 中的renderItem 内的部分 索引 值 的信息 根据http docs w3cub com react native sectionlist renderitem http docs w3
  • 如何将值从孩子的孩子传递给父母?

    我有一个父组件 有一个子组件 它也有一个子组件 Parent Child One child of parent Child Two child of child 当在子二中定义一个值时 我使用回调将该值传递给子一 但我也想将相同的值传递回
  • axios 如何将 blob 与 arraybuffer 作为响应类型处理?

    我正在下载一个 zip 文件axios https www npmjs com package axios 为了进一步处理 我需要获取已下载的 原始 数据 据我所知 Javascript 有两种类型 Blob 和 Arraybuffers
  • JavaScript 中的安全数据

    我必须为 Web 测试创建生成器 使用 HTML 和 JavaScript 测试必须离线和在线进行 正确答案和分数评估必须是生成的测试的一部分 最终用户的分数仅发送到服务器 无法在服务器上进行评估 并且服务器对问题一无所知 它只保存最终分数
  • 使用 NodeJS 创建 YouTube 播放列表

    我正在尝试使用 NodeJS 服务器创建 YouTube 播放列表 我已按照 Oauth 的 NodeJS 快速入门说明进行操作 如以下链接所示 https github com youtube api samples blob maste
  • 如何加载Jquery Tiny滚动条

    所以我想自定义一个滚动条 我发现了一个很小的滚动条 这是一个jquery插件 http baijs nl tinyscrollbar http baijs nl tinyscrollbar 问题是 无论如何我都无法让它工作 我将 Jquer
  • 如何使用 React 制作垂直选项卡

    有人可以为我提供一种使用 React 创建垂直选项卡的方法吗 我尝试了各种npm包 如react web tabs reactstrap和react bootstrap 最后两个只有水平选项卡的示例 React web tabs在其文档中有
  • 如何在 JavaScript 中将日期时间微格式转换为本地时间?

    我有一个页面当前正在使用日期时间微格式 http microformats org wiki datetime design pattern显示时间戳 但我只显示我自己的时区的人类可读时间
  • 了解客户端文件的对象 URL 以及如何释放内存

    我在用createObjectURL获取本地图像文件的引用 URL 当我完成文件 图像后 我打电话revokeObjectURL释放该内存 一切对我来说都很好 但我只是想确保我释放了我能释放的所有内存 我检查后出现了我的担忧chrome b
  • 如何向 SvelteKit/Vite 应用添加版本号?

    我正在尝试在我的 SvelteKit 应用程序中创建一个系统 它会在某个页面上向您显示有关当前应用程序版本的信息 最好是 Git 提交哈希和描述 我尝试使用Vite的定义功能 https vitejs dev config define在构

随机推荐

  • 使用 applescript 激活 Emacs 功能的最有效方法

    有没有更好的方法来使用 applescript 激活 Emacs 中的功能 而不是打开迷你缓冲区来启动该功能 将手指从控制键上移开以使用键盘快捷键启动 applescript 需要一段延迟 以便 Emacs 不会将其注册为命令 并且在输入函
  • 向量和抽象类

    在 SFML 中 有几种类型的对象 sf Shape sf Sprite sf Text 继承了抽象基类 sf Drawable 如果我创建一个 std vector 我可以在该向量中存储继承 sf Drawable 类的所有对象吗 如果您
  • Python:在字符串中查找子字符串并返回子字符串的索引

    I have 一个函数 def find str s char 和一个字符串 Happy Birthday 我本质上想输入 py 并返回3但我不断得到2返回 Code def find str s char index 0 if char
  • linux下Mono共享库位置

    我有一个用 C 编写的共享库 我想在 Linux 下与 Mono 一起使用 我遵循这个指南http www mono project com Interop with Native Libraries 我让它工作 但我必须将我的库文件放入
  • 来自不同脚本的多个角度元素

    是否可以使用角元素从不同的脚本生成 我有 2 个项目天气小部件和时钟小部件 它们生成自己的脚本 连接所有必需的脚本 当我单独使用这些小部件时 它工作正常 但是当它们在同一页面上使用时 会出现如下错误 DOMException Failed
  • rxJS observable 未到达订阅

    我使用 Angular 2 和 RxJS 但我很难设置一个简单的可观察系统 据我了解 do 运算符用于产生副作用 并且您可以在 subscribe 函数中放置代码来处理 observable 返回的结果 所以我的组件要求服务初始化系统 该服
  • 如何发送验证电子邮件而不进入垃圾邮件文件夹?

    我有一个 PHP 网站 在创建新帐户时会发送验证码 我的问题是 几个月以来 很多电子邮件都进入了垃圾邮件文件夹 我想到了一个解决方案 那就是使用 外部服务 来发送我的电子邮件 而不是简单地通过 PHP 中的邮件函数发送它 问题 1 我应该使
  • Android 主题首选项对话框

    我有一个使用首选项活动来设置某些用户设置的应用程序 我一整天都在试图解决这个问题 当用户按下 编辑文本首选项 对象时 我尝试为警报对话框设置主题 将打开一个对话框 用户可以设置共享首选项 弹出对话框 我想要绿色的文字 我想要绿色的分隔线 线
  • 使用 Guice 注入通用实现

    我希望能够使用 Guice 注入通用接口的通用实现 public interface Repository
  • 如何通过 HttpsURLConnection 将发布数据发送到 https 服务器 [重复]

    这个问题在这里已经有答案了 我看到一个表格 https aptransport in CFSTONLINE Reports VehicleRegistrationSearch aspx 在网络中 如果我给出选择搜索元素 作为注册号并输入搜索
  • 使用 XSLT 模板从一个 JAXB 对象转换为另一个 JAXB 对象

    有没有办法使用 XSLT 模板文件将 JAXB 生成的对象转换为另一个 JAXB 对象 这两个对象由两个不同的 JAXB 绑定生成 我知道我可以将对象编组为字符串 然后使用 XSLT 处理器将其转换为其他格式 之后将其解组到另一个 JAXB
  • Bazel 如何构建一个链接预构建外部库的简单应用程序

    Using Bazel2 2 我如何针对外部库进行构建 例如在我的情况下 我想针对 boost 进行构建 为 MS VC 2019 预构建 问题是这在 Bazel 中可能吗 鉴于 boost 库的本地路径是 c boost 1 72 0 其
  • 在 Delphi 7 中处理 CMYK jpeg 文件

    我正在尝试访问存储为 Jpeg 文件的文件 是否有一种简单的方法可以在不损失性能的情况下显示这些图像文件 您可以使用 TJPEGImage 实例加载 JPeg 文件 然后将其分配给 TBitmap 进行显示 您可以在单位 jpeg 中找到
  • 致命:远程错误:找不到存储库 octocat/myapp

    我是第一次使用 Git 刚刚分叉了一个开源项目 如下GitHub 的说明 我可以在本地计算机上克隆我的分叉 但在运行这些命令时出现错误 git remote add upstream git github com octocat myapp
  • 区分数据库中的最新数据

    我正在将数据存储在我的数据库中 存储的数据如下所示 id upload month created at 1 January 2017 01 30 13 22 39 2 Febuary 2017 01 30 13 23 42 3 Janua
  • 在 REPL 中使用对象时任务不可序列化

    因此 另一个问题促使我尝试以下操作 object Foo def f 1 sc parallelize List 1 map x gt val myF Foo f x myF 哪个有效 但以下无效 object Foo def f 1 de
  • ASP.Net MVC 路由捕获所有 *.aspx 请求

    This must之前曾被问过 但读完后here here here and here我无法推断相关部分以使其发挥作用 我正在将旧的 Web 表单站点改造成 MVC 并且想要捕获特定的传入 HTTP 请求 以便我可以发出RedirectPe
  • 按内部元素的数量对二维数组进行排序

    如何按二维数组内部元素的长度对其进行排序 内部元素的数量不相同 Example a 1 2 3 4 5 6 7 8 9 排序后 数组变为 gt 4 5 6 7 2 3 8 9 1 该解决方案有效 a 1 2 3 4 5 6 7 8 9 a
  • 表和存储过程的批量重命名

    我需要重命名所有表 存储过程 显然还有每个存储过程中引用旧表名称的代码 为什么这是最好的方法 我考虑过的一些方法 SP Rename 完成了一半的工作 然而 这不会改变 SP 本身内的代码 除了RedGates的Refactor之外 我在这
  • React Native:React 导航 StackNavigator 不起作用。收到错误:“未定义不是对象(评估'this.props.navigation.navigate')”

    我正在尝试使用 React Navigation 和 StackNavigator 在我的应用程序中导航 我有一个按钮onPress gt navigate DetailsScreen 我希望这能带我去DetailsScreen 但我收到以