react-native - 用玩笑 react 原生元素不起作用

标签 react-native ts-jest react-native-elements react-native-testing-library

我正在使用 @testing-library/react-native 但当我尝试测试具有任何 rneui: 4.0.0-rc-6 组件的组件时我收到几个错误:

现在第一个是

Details:

    /Users/ep/myProject/node_modules/@rneui/themed/dist/index.js:1
    ({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,global,jest){import { AirbnbRatingDefault as AirbnbRating, } from './AirbnbRating';
                                                                                           

我可以通过将 @rneui 添加到 package.json 内的 transformIgnorePatterns 来解决这个问题

但现在我得到了

ReferenceError: getCacheKeyFunction is not defined

  at _default (node_modules/@jest/create-cache-key-function/build/index.js:76:3)
  at Object.<anonymous> (node_modules/jest-expo/src/preset/assetFileTransformer.js:5:16)

关于如何解决这个问题有什么想法吗? (我的组件正在使用 rneui 中的图标和输入)

最佳答案

我能够通过模拟组件来解决这些问题

const MockInput = () => (<View />)
jest.mock('@rneui/themed', () => ({
  // AirbnbRating: jest.fn()
  Input: jest.fn(() => <MockInput />),
  Icon: jest.fn(() => <></>)

}))

关于react-native - 用玩笑 react 原生元素不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74294382/

相关文章:

reactjs - 如何使用 recompose 的 toClass HOC 向功能组件添加引用?

javascript - React Native - 从作为 prop 传递的函数调用方法

Angular 14 + Jest - typescript_1.default.canHaveDecorators 不是函数

javascript - 如何在 Global Jest 设置中查找别名?

react-native - 将 react-native-elements 用于 Material 图标 - 无法识别某些图标

javascript - 如何从我的应用程序中删除标题?为什么显示标题?

javascript - 如何使用包react-native-image-viewing显示图像的当前索引

reactjs - 如何使用带有 typescript 的手动模拟, react 和开玩笑?

javascript - React Native 元素 ListItem 按钮周围的填充(根据文档)