【发布时间】:2020-10-28 17:56:50
【问题描述】:
我们正在使用 create-react-app 来构建我们的声明性框架。在这个框架中,我们编写了一个 json 文件,该文件由 webpack 加载到 react-component 中。我们为此编写了特定的加载器。这在浏览器中运行良好。但是面临单元测试的问题。 Create-react-app 使用 Jest 进行单元测试。 我想要实现的是在 js 或 react 组件中转换这些 json 文件,但遇到以下限制
- 如果我为 json 添加自定义转换,则由于 jest-runtime 的限制,它不起作用。 转换后,它期望输出仅为 json。请参阅 Jest 运行时代码限制
- 如果我将文件扩展名重命名为“.vm”,那么在以下情况下,它永远不会将我的转换器作为 create-react-app add fileTransformer 拾取。该正则表达式中提到的所有其他类型都会选择突出显示的转换器。
需要您的指导来解决此问题。
【问题讨论】:
-
它期望输出为 json 的原因是因为它使模拟 json 文件超级简单
data.json and __mock__/data.jsongithub.com/facebook/jest/pull/8278#issuecomment-496316634 -
理想情况下,如果您覆盖转换对象,您的选项 2 应该可以工作。你能分享一下你的 package.json 的玩笑对象吗 (create-react-app.dev/docs/running-tests/#configuration)
标签: javascript reactjs jestjs create-react-app react-app-rewired