VS Code中babel.config.js提示'module' is not defined错误如何解决
问题解决方法
原因说明
这个错误是编辑器/代码检查工具将babel.config.js识别为ES模块规范的文件,而你当前使用的是CommonJS规范的module.exports语法,两者不匹配导致的报错。
可行解决方案
方案1:调整ESLint规则(项目使用ESLint时适用)
在项目根目录的.eslintrc.json或.eslintrc.js配置文件中补充环境声明,指定配置文件适用CommonJS环境:{ "env": { "commonjs": true, "node": true } }也可以在项目根目录新增
.eslintignore文件,添加一行babel.config.js直接忽略对该文件的检查。方案2:修改VS Code相关配置
可以在babel.config.js的第一行添加注释/* eslint-env commonjs */,手动告知检查工具当前文件的运行环境。
也可以在项目根目录新建.vscode/settings.json文件,写入以下内容:{ "files.associations": { "babel.config.js": "javascript" } }配置完成后重启VS Code即可生效。
方案3:适配ES模块规范
如果你的项目package.json中已经配置了"type": "module",默认所有JS文件都遵循ES模块规范,可以直接将babel.config.js重命名为babel.config.cjs,保留原有CommonJS写法。
也可以直接把配置内容改成ES模块的导出写法:export default { presets: [ ['@babel/preset-env', { targets: { node: 'current' } }], '@babel/preset-typescript' ] }
内容的提问来源于stack exchange,提问作者Emily Grace Seville
相关产品推荐
相关产品推荐

