Jest 无法导入使用 _moduleAliases 导入模块的模块

时间:2021-06-22 12:19:52

标签: node.js jestjs package.json module-alias

我的模块以这种方式导入模块:

const { Item, Item1 } = require('@v2/helpers');

这是我的 package.json:

"_moduleAliases": { "@v2/helpers": "src/v2-helpers" }

然后在一个测试文件中,我尝试导入一个以上述方式导入的文件,但由于 Jest 无法导入这些模块而失败。

Test suite failed to run

    Cannot find module '@v2/helpers' from 'src/path/to/my-module.js'

怎么办?

1 个答案:

答案 0 :(得分:1)

尝试使用 moduleNameMapper

  • 在 package.json 中
{
  "": "... rest of the package.json",

  "jest": {
    "moduleNameMapper": {
      "@v2/helpers": "src/v2-helpers"
    }
  }
}
  • 或在 jest 配置中 (jest.config.js)
const {defaults} = require('jest-config');
const {_moduleAliases} = require('./package.json');

module.exports = async () => {
  return {
    ...defaults,
    // rest of the configuration
    moduleNameMapper: _moduleAliases
  }
}