开玩笑无法解析节点模块子路径模式导入

jest cannot resolve node modules subpath pattern imports

我使用 node express 构建项目并使用 https://nodejs.org/api/packages.html#packages_subpath_patterns 防止“../../../xxx.js”

我将其添加到 package.json 并且运行良好

"imports": {
  "#src/*": "./src/*.js"
}

但是当我尝试 运行 开玩笑测试时出现了这个错误

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 配置中(例如 jest.config.json)

"moduleNameMapper": {
    "#src/(.*)": "<rootDir>/src/"
}

请参阅 Jest 配置文档中的 moduleNameMapper 属性。