使用Create React App和Jotai时导入useHydrateAtoms失败求助
解决Jest中找不到Jotai
useHydrateAtoms模块的问题 1. 修正导入路径
你当前使用的导入路径是错误的,useHydrateAtoms 并不存在于 jotai/react/utils/useHydrateAtoms 路径下。正确的导入方式是从 jotai/utils 导入:
import { useHydrateAtoms } from "jotai/utils";
2. 调整Jest配置(修正路径后仍报错时)
如果修正路径后Jest依旧无法识别模块,需要配置Jest正确解析Jotai的模块:
- 若项目使用Create React App,直接在
package.json的jest字段中添加配置:
"jest": { "moduleNameMapper": { "^jotai/utils$": "<rootDir>/node_modules/jotai/utils/dist/utils.esm.js" } }
- 若自定义Jest配置(有
jest.config.js文件),添加如下内容:
module.exports = { // 保留原有配置,新增以下内容 moduleNameMapper: { "^jotai/utils$": "<rootDir>/node_modules/jotai/utils/dist/utils.esm.js" } };
验证操作
- 重新安装依赖(可选,确保依赖正常):
npm install
- 运行测试:
npm test
内容的提问来源于stack exchange,提问作者PlexQ
相关产品推荐
相关产品推荐

