我使用 node express 和使用构建项目
https://nodejs.org/api/packages.html#packages_subpath_patterns防止“../../../xxx.js”
我将此添加到 package.json
并且完美地工作
"imports": {
"#src/*": "./src/*.js"
}
但是当我尝试从 jest 运行测试时出现了这个错误Cannot find module '#src/config/database.js' from 'src/database/connection.js'
Require stack:
src/database/connection.js
test/admin.test.js
1 | import { MongoClient } from "mongodb";
> 2 | import databaseConfig from "#src/config/database.js";
| ^
at Resolver.resolveModule (node_modules/jest-resolve/build/resolver.js:311:11)
at Object.<anonymous> (src/database/connection.js:2:1)
我不知道如何解决这个问题,试图从谷歌搜索和文档中找到解决方案找不到与此类似的问题
最佳答案
将此添加到您的配置文件中
// jest.config.json
moduleNameMapper: {
"#src/(.*)": "<rootDir>/src/$1",
}
https://jestjs.io/docs/configuration#modulenamemapper-objectstring-string--arraystring
关于node.js - jest 无法解析 Node 模块子路径模式导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68869339/