VITE BALABALA require balabla not supported

记一个抓狂的问题

vite 项目报错:

javascript 复制代码
failed to load config from E:\Projects\Code\maegebazide\vite.config.ts
error when starting dev server:
Error [ERR_REQUIRE_ESM]: require() of ES Module E:\Projects\Code\maegebazide\node_modules\package-manager-detector\dist\detect.mjs not supported.
Instead change the require of E:\Projects\Code\maegebazide\node_modules\package-manager-detector\dist\detect.mjs to a dynamic import() which is available in all CommonJS modules.
    at Object.<anonymous> (E:\Projects\Code\maegebazide\node_modules\@antfu\install-pkg\dist\index.cjs:41:21)
    at _require.extensions.<computed> [as .js] (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64459:17)
    at Object.<anonymous> (E:\Projects\Code\maegebazide\node_modules\@iconify\utils\lib\loader\install-pkg.cjs:3:20)
    at _require.extensions.<computed> [as .js] (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64459:17)
    at Object.<anonymous> (E:\Projects\Code\maegebazide\node_modules\@iconify\utils\lib\loader\fs.cjs:5:27)
    at _require.extensions.<computed> [as .js] (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:    at Object.<anonymous> (E:\Projects\Code\maegebazide\node_modules\@iconify\utils\lib\loader\node-loader.cjs:4:19)
    at _require.extensions.<computed> [as .js] (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64459:17)
    at Object.<anonymous> (E:\Projects\Code\maegebazide\node_modules\unplugin-icons\dist\chunk-X6JWFUC3.js:59:19)
    at _require.extensions.<computed> [as .js] (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64459:17)
    at Object.<anonymous> (E:\Projects\Code\maegebazide\node_modules\unplugin-icons\dist\vite.js:3:24)
    at _require.extensions.<computed> [as .js] (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64459:17)
    at Object.<anonymous> (E:\Projects\Code\maegebazide\vite.config.ts:103:28)
    at _require.extensions.<computed> [as .js] (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64456:24)
    at loadConfigFromBundledFile (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64464:21)     
    at async loadConfigFromFile (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64324:28)      
    at async resolveConfig (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:63932:28)
    at async _createServer (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:63219:20)
    at async CAC.<anonymous> (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/cli.js:733:24)
PS E:\Projects\Code\maegebazide> npm run dev

> 号百外呼@5.1.0 dev
> vite serve --mode development

failed to load config from E:\Projects\Code\maegebazide\vite.config.ts
error when starting dev server:
Error [ERR_REQUIRE_ESM]: require() of ES Module E:\Projects\Code\maegebazide\node_modules\package-manager-detector\dist\detect.mjs not supported.
Instead change the require of E:\Projects\Code\maegebazide\node_modules\package-manager-detector\dist\detect.mjs to a dynamic import() which is available in all CommonJS modules.
    at Object.<anonymous> (E:\Projects\Code\maegebazide\node_modules\@antfu\install-pkg\dist\index.cjs:41:21)
    at _require.extensions.<computed> [as .js] (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64459:17)
    at Object.<anonymous> (E:\Projects\Code\maegebazide\node_modules\@iconify\utils\lib\loader\install-pkg.cjs:3:20)
    at _require.extensions.<computed> [as .js] (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64459:17)
    at Object.<anonymous> (E:\Projects\Code\maegebazide\node_modules\@iconify\utils\lib\loader\fs.cjs:5:27)
    at _require.extensions.<computed> [as .js] (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:    at Object.<anonymous> (E:\Projects\Code\maegebazide\node_modules\@iconify\utils\lib\loader\node-loader.cjs:4:19)
    at _require.extensions.<computed> [as .js] (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64459:17)
    at Object.<anonymous> (E:\Projects\Code\maegebazide\node_modules\unplugin-icons\dist\chunk-X6JWFUC3.js:59:19)
    at _require.extensions.<computed> [as .js] (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64459:17)
    at Object.<anonymous> (E:\Projects\Code\maegebazide\node_modules\unplugin-icons\dist\vite.js:3:24)
    at _require.extensions.<computed> [as .js] (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64459:17)
    at Object.<anonymous> (E:\Projects\Code\maegebazide\vite.config.ts:103:28)
    at _require.extensions.<computed> [as .js] (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64456:24)
    at loadConfigFromBundledFile (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64464:21)     
    at async loadConfigFromFile (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:64324:28)      
    at async resolveConfig (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:63932:28)
    at async _createServer (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/chunks/dep-24daf00c.js:63219:20)
    at async CAC.<anonymous> (file:///E:/Projects/Code/ma/lege/bazide/node_modules/vite/dist/node/cli.js:733:24)

要死哦 VITE不支持 require 但是node_modules/vite/dist/node/chunks/dep-24daf00c.js 里面有require

这不合理啊

javascript 复制代码
// TODO: use import()
const _require$3 = createRequire$1(import.meta.url);

CSDN 的文章要么出奇的一致且没用

要么就是收费

看起来源码标注了 TODO 那么估计新版本的vite 可能解决了这个问题,我就看看自己的vite 版本: 4.6.3

搜来收去:
排错指南| Vite 官方中文文档

非常有用:(以下是原文)

配置

该包仅支持 ESM

当使用 require 导入一个仅支持 ESM 的包时,会出现以下错误。

Failed to resolve "foo". This package is ESM only but it was tried to load by require.

"foo" resolved to an ESM file. ESM file cannot be loaded by require.

ESM 格式的文件无法被 require 加载。

我们建议你通过以下方式将你的配置文件转换为 ESM 格式:

在邻近的 package.json 中添加 "type": "module"

将 vite.config.js/vite.config.ts 重命名为 vite.config.mjs/vite.config.mts

按照建议搞一下 , ok 起码不报错了!不过还有新问题 ,真正排查......

相关推荐
豆苗学前端14 小时前
10分钟带你入门websocket,并实现一个在线多人聊天室
前端·javascript·后端
白水清风14 小时前
Vue3之渲染器
前端·vue.js·面试
刘永胜是我14 小时前
解决Volta环境下npm全局包卸载失败:一次深入排查之旅
前端·node.js
白水清风14 小时前
Vue3之组件化
前端·vue.js·面试
边洛洛14 小时前
解决[PM2][ERROR] Script not found: D:\projects\xxx\start
前端·javascript
农夫山泉的小黑15 小时前
【DeepSeek帮我准备前端面试100问】(十八)Reflect在vue3的使用
前端·面试
Achieve前端实验室15 小时前
【每日一面】手写防抖函数
前端·面试·node.js
三十_15 小时前
TypeORM 多对多关联篇:中间表、JoinTable 与复杂关系的建模
前端·后端
用户68833620597015 小时前
移动端 Web 性能调优:viewport、dvh 与触控优化解析
前端
前端付豪15 小时前
项目启动:搭建Vue 3工程化项目
前端·javascript·vue.js