You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

将ESLint配置从JSON转为JS时遇export语法错误,求解决方案

修复ESLint配置文件的Export语法错误

这个问题其实是Node.js对ESLint配置文件的模块解析规则导致的——默认情况下,.eslintrc.js会被当作CommonJS模块处理,而你用了ES模块的export default语法,所以Node.js会抛出语法错误。

最简单的修复方案:改用CommonJS的导出方式

直接把export default替换成Node.js原生支持的module.exports就可以解决问题,这也是ESLint配置文件最常用的写法:

错误写法:

export default {
  env: {
    browser: true
    // 其他配置...
  }
}

正确写法:

module.exports = {
  env: {
    browser: true
    // 其他配置...
  }
}

如果你习惯先把配置存入变量再导出,也改成CommonJS的方式:

const config = {
  env: {
    browser: true
    // 其他配置...
  }
}

module.exports = config

为什么会出现这个问题?

ES模块(import/export)在Node.js中需要显式启用:要么在package.json中添加"type": "module",要么把文件后缀改成.mjs。但ESLint的配置文件默认不推荐这么做,因为会和项目中其他CommonJS模块产生兼容性问题,所以用module.exports是最稳妥、最通用的选择。

内容的提问来源于stack exchange,提问作者Mr. Robot

火山引擎 最新活动