【发布时间】:2018-12-07 10:07:18
【问题描述】:
我一直在我的 react 项目(打字稿)中使用 jest 进行单元测试。现在我在 webpack 和 tsconfig 中启用了路径别名。为了在玩笑中使用路径别名,我遵循了这个tutorial。但是当我运行测试时出现此错误:
这是我启用路径别名的 webpack 配置:
alias: {
'ui': path.resolve(__dirname, 'src/framework/components/ui')
}
这是我启用路径别名 (package.json) 的玩笑配置
"moduleNameMapper": {
"ui": "<rootDir>/src/framework/components/ui/"
}
我也尝试过教程中的这个版本:
"moduleNameMapper": {
"^ui/(.*)$1": "<rootDir>/src/framework/components/ui/$1"
}
最后是我的 tsconfig.json 配置:
"baseUrl": "src",
"paths": {
"ui": ["framework/components/ui"]
}
当我运行测试时,jest 实际上会解析路径别名。但它无法拾取默认公开的组件。例如这一行:
import Button from './FormComponents/Button';
失败,因为“按钮”是从其模块默认导出的。
我希望我的问题是有道理的。提前感谢您的帮助。
【问题讨论】:
标签: typescript jestjs