【发布时间】:2020-02-24 10:38:53
【问题描述】:
在我的应用程序中,我使用 React 和 TypeScript。我尝试运行玩笑测试,但出现以下错误:
C:\Users\e-KDKK\workspace\konrad\mikskarpety\src\images\icons\Sock.svg:1 ({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,global,jest){<svg xmlns="http://www.w3.org/2000/svg" width="18.725" height="23.947" viewBox="0 0 18.725 23.947"> ^ SyntaxError: Unexpected token < 1 | import React, { FC } from 'react'; 2 | > 3 | import SockIcon from '../../images/icons/Sock.svg'; | ^ 4 | 5 | export const Spinner: FC = () => { 6 | return ( at ScriptTransformer._transformAndBuildScript (node_modules/@jest/transform/build/ScriptTransformer.js:537:17) at ScriptTransformer.transform (node_modules/@jest/transform/build/ScriptTransformer.js:579:25) at Object.<anonymous> (src/components/Spinner/Spinner.tsx:3:1)
这个文件甚至没有经过测试。我不知道为什么它试图编译它。我的jest.config.json 文件仅包含覆盖阈值。
我读到 jest 有时需要为特定文件(如 SVG)添加额外的转换部分,但是当我添加到配置中时
"transform": {
"^.+\\.svg$": "jest-svg-transformer"
},
我的错误信息仅更改为:
C:\Users\e-KDKK\workspace\konrad\mikskarpety\test\utils\debounce.test.ts:1 ({"Object.":function(module,exports,require,__dirname,__filename,global,jest){import { getVersion } 来自“开玩笑”; ^
SyntaxError: Unexpected token { at ScriptTransformer._transformAndBuildScript (node_modules/@jest/transform/build/ScriptTransformer.js:537:17) at ScriptTransformer.transform (node_modules/@jest/transform/build/ScriptTransformer.js:579:25)
这让我更困惑。
您可以在此处找到该应用的代码:https://github.com/KonradKlimczak/mikskarpety
【问题讨论】:
标签: javascript reactjs svg jestjs