运行npm test
(调用vitest
)时出现以下错误:
失败src/Applications/components/ApplicationsTable/ApplicationsTable.test.tsx [ src/Applications/components/ApplicationsTable/ApplicationsTable.test.tsx ]错误:不支持目录导入“{internalNpmPackage}/build/components”解析从{internalNpmPackage}/build/index.js导入的ES模块s序列化错误:{ code:'ERR_UNEPORTED_IMPORT',url:'文件:/Users/me/{myProject}/node_modules/{internalNpmProject}/build/components' }
其中'internalNpmPackage'是一个内部npm包(共享的react组件库),'myProject'是我正在测试的react项目。
该项目运行良好的vite,它只是测试我得到这个问题。
'internalNpmPackage'是一个react组件的集合,这些组件在为项目服务时被导出并导入。
我正在使用React,TS,Vite和Vitest。
当我在本地链接这些包时(使用Yalc,类似于npm link -它工作得很好)
3条答案
按热度按时间0sgqnhkj1#
如果尚未导入目录索引,请尝试导入。如果当前的导入语句是
import { component1, component2} from '{internalNpmPackage}/build/components'
,试着把它改成
import { component1, component2} from '{internalNpmPackage}/build/components/index.js'
个参考-https://nodejs.org/api/esm.html#mandatory-file-extensions
如果上述解决方案不适用于您,请分享导致错误的导入语句,内部包的package.json以及项目的文件夹结构
pkwftd7m2#
如果您还没有在TypeScript项目中使用ts-jest,请考虑切换到它,以便更好地与Jest中的TypeScript兼容。
字符串
您可以在文档https://jestjs.io/docs/getting-started中查看详细信息
zed5wv103#
解决这个问题的方法是在vite config中添加“test”:
字符串
根据vite docs: