在 weback 中找不到别名模块的模块



在 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)

最新更新