如何卸载SvelteKit?运行npm run dev -- --open报ERR_REQUIRE_ESM错误
SvelteKit
ERR_REQUIRE_ESM 报错解决及卸载方法 卸载SvelteKit的具体步骤
- 第一步:卸载SvelteKit核心依赖,终端执行以下命令:
npm uninstall @sveltejs/kit @sveltejs/adapter-auto
如果你安装了其他自定义适配器(比如@sveltejs/adapter-node、@sveltejs/adapter-vercel等),直接把对应包名追加到命令末尾一起卸载即可。 - 第二步:删除SvelteKit专属配置文件,包括项目根目录下的
svelte.config.js、vite.config.js。 - 第三步:清理package.json冗余配置,删除scripts字段下的
dev、build、preview等SvelteKit相关脚本,如果你后续不需要ESM环境,也可以删掉之前添加的"type": "module"配置。
可选:不卸载解决报错的方案
你遇到的Error [ERR_REQUIRE_ESM]报错是因为SvelteKit v1.0.0-next.199及之后版本仅支持ESM规范,不能被CommonJS的require()语法加载,加了"type": "module"还报错可以尝试以下操作:
- 升级Node.js版本:你当前使用的16.3.0属于早期Node.js 16版本,对ESM的支持存在大量已知bug,升级到Node.js 16.20.0以上的LTS版本,或者直接使用Node.js 18 LTS即可解决绝大多数兼容问题。
- 修正配置文件语法:检查项目内所有.js/.ts配置文件,把所有
require()、module.exports这类CommonJS语法,全部替换为ESM对应的import、export default语法。 - 升级兼容有问题的依赖:你贴出的依赖清单如下:
其中"dependencies": { "chart.js": "^3.6.0", "cookie": "^0.4.1", "moment": "^2.29.1", "svelte-i18n": "^3.3.13" }3.3.13版本的svelte-i18n存在已知的ESM兼容问题,将其升级到最新正式版即可解决该依赖导致的报错。
内容的提问来源于stack exchange,提问作者Ly Nguyen
相关产品推荐
相关产品推荐

