在 webpack 中,我为库设置了一个别名
resolve: {
alias: {
"@local/module": path.resolve(__dirname, "..path")
}
}
在使用此模块的组件上运行 jest 时,我收到以下错误:
Cannot find module '@local/module' from 'Component.tsx'
我尝试在我的jest.config.js
中包含以下内容,但没有成功
moduleDirectories: ["node_modules", "src"],
任何帮助将不胜感激,谢谢
Jest 不知道 Webpack 的别名。您需要使用 Jest 自己的别名系统来定义相同的别名。
在 jest.config.js
中添加如下所示的moduleNameMapper
键:
{
"moduleNameMapper": {
"@local/module": "<rootDir>/src/module"
}
}
它还支持用于动态重写路径的正则表达式。有关详细信息,请参阅文档。
你可能的意思是path.resolve(__dirname, "..", path)