在我的 react 应用程序中,我导入一个模块,如下所示:
import { isValidAddress } from 'orbit-db';
isValidAddress
的一些依赖需要multicodec/src/base-table
(see this line)。
但是,jest 给出以下错误:
Configuration error:
Could not locate module multicodec/src/base-table mapped as:
/Users/h/Documents/code/orbit-db-time-machine/src/base-table.
Please check your configuration for these entries:
{
"moduleNameMapper": {
"/src\/(.*)$/": "/Users/h/Documents/code/orbit-db-time-machine/src/$1"
},
"resolver": null
}
我认为发生这种情况是因为 Jest 依赖规则 "/src\/(.*)$/"
正在用 src
重写所有路径其中<rootDir>/src
,即使它们来自 npm 模块。
我尝试通过将以下配置添加到我的 package.json
来解决此问题:
"jest": {
"moduleNameMapper": {
"/multicodec\/(.*)$/": "<rootDir>/node_modules/multicodec/$1"
}
}
但是,这并没有改变错误。我能够消除错误的唯一方法是删除我的 import
声明 - 但是,这在我的代码中是必需的。
注意:该代码在从我的 React 应用程序运行时有效,只有在我运行 jest 时才会中断。
最佳答案
关于javascript - 如果任何依赖项在路径中有 "Could not locate module",则开 Jest "src",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58359544/