gpt4 book ai didi

reactjs - 开 Jest ,意外的 token 导入

转载 作者:行者123 更新时间:2023-12-03 13:17:59 26 4
gpt4 key购买 nike

我启动了一个新的 React 项目,我想使用 Jest 作为测试平台。尽管有文档、博客和许多其他资源(例如 stackoverflow),但我总是遇到可能与 babel 问题相关的“意外 token 导入”错误,但我的conf似乎没问题。欢迎任何帮助。

My Jest conf(在 package.json 中)。我的 package.json 具有 babel-jest、babel-preset-es2015、babel-preset-react 等依赖项。

 "jest": {
"testMatch": [
"**/?(*.)spec.js?(x)"
],
"moduleDirectories": [
"src",
"node_modules"
],
"moduleNameMapper": {
"^lib/(.*)$": "<rootDir>/src/lib/$1",
"^components/(.*)": "<rootDir>/src/components/$1",
},
"transform": {
"^.+\\.jsx?$": "babel-jest"
}

我的 .babelrc 配置:

{
"presets": [
["es2015", { "modules": false }],
"react"
],
"plugins": [
["react-hot-loader/babel"],
["transform-object-rest-spread", { "useBuiltIns": true }],
["transform-runtime"]
],
"env": {
"test": {
"presets": ["es2015", "react"]
}
}
}

我的规范文件:

import React from 'react';
import Radio from 'components/ui/radio';
...

和组件/ui/radio(第一行引发导入错误):

import Container from './container.jsx';
...

我的 webpack 有两个名为 lib 和 Components 的别名(在 Jest 中定义为 moduleNameMapper)。

...
resolve: {
mainFiles: ['index', 'main'],
extensions: ['.js', '.jsx'],
alias: {
lib: helpers.getPath('src/lib/'),
components: helpers.getPath('src/components/'),
},
modules: [
helpers.getPath('src'),
helpers.getPath('node_modules'),
],
},
...

最佳答案

我遇到了一个非常类似的问题,最后我在运行 jest 时使用 --no-cache 解决了它。

我的 package.json 中还有 babel-jest、babel-preset-es2015、babel-preset-react 等依赖项。

jest --no-cache

关于reactjs - 开 Jest ,意外的 token 导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43458748/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com