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 起码不报错了!不过还有新问题 ,真正排查......

相关推荐
万少7 小时前
HarmonyOS 开发必会 5 种 Builder 详解
前端·harmonyos
橙序员小站9 小时前
Agent Skill 是什么?一文讲透 Agent Skill 的设计与实现
前端·后端
炫饭第一名12 小时前
速通Canvas指北🦮——基础入门篇
前端·javascript·程序员
王晓枫12 小时前
flutter接入三方库运行报错:Error running pod install
前端·flutter
符方昊12 小时前
React 19 对比 React 16 新特性解析
前端·react.js
ssshooter12 小时前
又被 Safari 差异坑了:textContent 拿到的值居然没换行?
前端
曲折12 小时前
Cesium-气象要素PNG色斑图叠加
前端·cesium
Forever7_13 小时前
Electron 淘汰!新的桌面端框架 更强大、更轻量化
前端·vue.js
Angelial13 小时前
Vue3 嵌套路由 KeepAlive:动态缓存与反向配置方案
前端·vue.js
jiayu13 小时前
Angular学习笔记24:Angular 响应式表单 FormArray 与 FormGroup 相互嵌套
前端