javascript - 为什么 Jest 设置“transformIgnorePatterns”会导致 React 应用程序中的范围 CSS 导入出现问题?
问题描述
transformIgnorePatterns
添加到 Jest 设置后,我的 React 应用程序的 Jest 测试出现导入问题。我在根 package.json 文件的“jest”部分中添加了以下默认设置:
"transformIgnorePatterns": [
"/node_modules/",
"\\.pnp\\.[^\\/]+$"
]
这导致我在 app.js 中的范围 CSS 导入出现问题。
import '@progress/kendo-theme-material/dist/all.css';
({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,global,jest){@charset "UTF-8";
^
SyntaxError: Invalid or unexpected token
1 | import AppRoutes from './routes/appRoutes';
2 | import CssBaseline from '@material-ui/core/CssBaseline';
> 3 | import '@progress/kendo-theme-material/dist/all.css';
| ^
4 |
5 | // local imports
6 | import './App.css';
at Runtime.createScriptFromCode (node_modules/jest-runtime/build/index.js:1350:14)
at Object.<anonymous> (src/App.js:3:1)
如果我注释掉那条 CSS 导入行,问题就会消失。是什么导致了这个问题,我该如何解决?
我将需要 babel 编译一个未编译的 node_module 以便 Jest 最终运行而不会出错,但我首先尝试解决这个问题。
解决方案
推荐阅读
- python - 如何在python3中计算天或月的时差
- c++ - 如何在同一父级中为多静态库编写 cmakelist
- python - AttributeError:“NoneType”对象没有属性“remove_roles”
- python - 过滤与列表中的元素匹配的熊猫数据框列表列
- api - 如何将 WEB API 链接到本地文件,以便在执行 POST 方法时,它将存储在我的本地文件中,而 GET 方法 API 将从本地文件中读取?
- javascript - setTimeout(() => ele.click()) 和 ele.click() 会导致不同的动画!那么,这与浏览器渲染或事件循环有关吗?
- apache - 如何在 Bitnami (Apache) 中访问 .htaccess?
- python - 将 2 个数据帧中的值与 IF 条件输出(1、0、-1)进行比较
- json - 如何使用飞镖将地图中的集合转换为 json
- php - 即使提供了匹配的证书,PHP SoapClient 也无法验证_peer