react-native - React-Navigation:StackActions.pop 不能被模拟,因为它不是一个函数
问题描述
我正在尝试模拟from的pop
函数,以便可以使用 jest 对其进行测试,但不知何故它会抛出错误StackAction
react-navigation
import { StackActions } from 'react-navigation'
const popSpy = jest.spyOn(StackActions, 'pop')
错误说
Cannot spy the pop property because it is not a function; undefined given instead
当我尝试在控制台中打印 StackActions 对象时,它只显示push
、reset
和replace
解决方案
看起来您已经在StackActions
属性列表不完整的地方模拟了对象,因为日志中的所有方法都是模拟函数。
所以问题是无论你在哪里模拟它,你都需要添加缺少的方法。
但是,模拟StackActions
方法没有意义。他们只返回对象,不做任何其他事情。您可能想模拟navigation.pop
/ navigation.dispatch
。但这与这个问题无关。
推荐阅读
- ssl - TLS 握手失败并出现错误 tls:第一条记录看起来不像 TLS 握手服务器=Orderer remoteaddress=192.168.144.4:43496
- jquery - 用于数据表的 Ajax 源数据
- c# - 通过 32feet.Net 库连接蓝牙设备
- php - 如何在 Laradock 中安装 Mosquitto-php
- apache-spark - 在 Spark 中读取具有多个标题的文本文件
- comma - 如何在此输出中添加空格或逗号?
- python - python pandas中child_id和parent_id值的加法
- amazon-web-services - 如何进行 AWS S3 SSE KMS 密钥轮换?
- java - 外化spring属性文件后找不到Bean SpringTemplateEngine错误
- kendo-ui - 使用 Base-unit 在同一月份绘制两条不同日期的线:月