Jestjs Jest-如何将根斜杠导入与babel Jest一起使用?
我使用BabelJest来传输我的代码以进行测试。 我无法获得如何使用相对于项目根的路径 例如,如果在一个测试文件中,我导入了一个模块:Jestjs Jest-如何将根斜杠导入与babel Jest一起使用?,jestjs,babeljs,es6-modules,babel-jest,Jestjs,Babeljs,Es6 Modules,Babel Jest,我使用BabelJest来传输我的代码以进行测试。 我无法获得如何使用相对于项目根的路径 例如,如果在一个测试文件中,我导入了一个模块:/imports/ui/myModuleJest会抛出一个错误 Cannot find module '/Users/me/dev/myProject/Users/me/dev/myProject/imports/ui/myModule' from 'test.jsx'` 但是,如果我导入一个具有如下相对路径的模块:。/../ui/myModule,它会工作
/imports/ui/myModule
Jest会抛出一个错误
Cannot find module
'/Users/me/dev/myProject/Users/me/dev/myProject/imports/ui/myModule' from 'test.jsx'`
但是,如果我导入一个具有如下相对路径的模块:。/../ui/myModule
,它会工作
我的.babelrc
:
{
"plugins": [
"transform-decorators-legacy",
"transform-class-properties",
"babel-root-slash-import"
],
"presets": [
"es2015",
"react",
"stage-0"
],
"env": {
"test": {
"plugins": [
"transform-decorators-legacy",
"transform-class-properties",
"babel-root-slash-import"
],
"presets": [
"es2015",
"react",
"stage-0"
]
}
}
}
我的笑话是:
"jest": {
"roots": ["<rootDir>/imports/tests/jest"]
},
“开玩笑”:{
“根”:[“/imports/tests/jest”]
},
在实例中,您可以使用配置选项
// package.json
{
"jest": {
"roots": ["<rootDir>/imports/tests/jest"]
},
"moduleNameMapper": [
"^ui/(.*)$": "<rootDir>/imports/ui/$1"
]
}
// test.jsx
import myModule from 'imports/ui/myModule';
//package.json
{
“笑话”:{
“根”:[“/imports/tests/jest”]
},
“moduleNameMapper”:[
“^ui/(.*)$”:“/imports/ui/$1”
]
}
//test.jsx
从“imports/ui/myModule”导入myModule;
有关的答覆如下:
jest
官方文档中的另一个示例: