Tailwind CSS安装PostCSS插件后npm run build报ESM_URL_SCHEME错误如何解决
问题排查与解决步骤
这个ERR_UNSUPPORTED_ESM_URL_SCHEME错误在Windows环境下的PostCSS/Tailwind项目中高频出现,核心原因是Node.js旧版本对ESM加载的Windows路径支持不完善,或者配置规则不匹配,按以下顺序排查即可:
- 升级Node.js版本
低于14.13.1的Node.js版本对ESM协议的路径解析存在已知BUG,直接升级到18.x或20.x的LTS长期支持版本,升级完成后重启PowerShell,执行node -v确认版本生效后,重新运行npm run build测试。 - 修正package.json配置
- 检查package.json中是否存在
"type": "module"字段:如果你的postcss.config.js、tailwind.config.js配置文件用的是module.exports = {}的CommonJS导出规范,直接删除该字段;如果确实要使用ESM规范,把所有配置文件的后缀改为.cjs(比如postcss.config.cjs、tailwind.config.cjs),明确指定Node使用CommonJS规则加载配置文件。 - 检查build命令写法:从报错日志可以看到你的build命令存在多余的反斜杠转义符,把package.json的scripts字段下的build命令修改为正确写法:
"build": "postcss ./src/tailwind.css -o ./public/tailwind.css" - 检查package.json中是否存在
- 重装依赖解决版本冲突
删除项目根目录下的node_modules文件夹和package-lock.json文件,重新执行npm install安装所有依赖,排除依赖版本不匹配导致的加载异常。 - 临时兼容方案
如果暂时无法升级Node.js版本,可以修改build命令手动指定ESM解析规则:node --experimental-specifier-resolution=node node_modules/postcss-cli/bin/postcss.js ./src/tailwind.css -o ./public/tailwind.css
内容的提问来源于stack exchange,提问作者Vishnu Chitara
相关产品推荐
相关产品推荐

