首页 > 解决方案 > RN spyOn click 方法不是上下文 setState 等类型的可分配参数

问题描述

将 RN 16.9.0 与 Jest 一起使用。我试图从我的组件中窥探一个按钮,但总是出错。

const spy = jest.spyOn(wrapper.instance(), "handleClick");

handeClick 带有红色下划线并显示以下错误(也在运行 jest 测试时):

'"handleClick"' 类型的参数不能分配给 '"context" 类型的参数 | “设置状态” | "强制更新" | “渲染” | "componentDidMount" | “应该组件更新” | “组件WillUnmount” | "componentDidCatch" | "getSnapshotBeforeUpdate" | ... 6 更多... | “UNSAFE_componentWillUpdate”'

我的组件如下所示:

export default class RecordTimer extends React.Component {
  handleClick = () => {...}
  ...
  render() {
     return (
        <Button
          onPress={this.handleClick}
          ...
        />
  )
}

标签: react-nativejestjsexpoenzyme

解决方案


推荐阅读