intellij idea 中的多个 ECMA-Script 版本

Multiple ECMA-Script versions in intellij idea

我正在使用 Intellij IDEA 开发一个 Node.js 应用程序。 我在前端使用 es5,在后端使用 es6。

有没有办法为每个文件夹定义 ECMAScript 级别?

谢谢

如果使用多个 ECMAScript 版本,则应为项目选择公分母,ECMAScript 6

JetBrains IDE 依赖 ESLint 进行 linting,因此可以为每个文件夹提供不同的 .eslintrc 配置,即

{
    "env": {
        "es6": false,
        ...
    },
    "extends": "eslint:recommended",
    "rules": {
        "no-var": 0,
        ...
    }
}

用于前端,

{
    "env": {
        "es6": true,
        ...
    },
    "extends": "eslint:recommended",
    "rules": {
        "no-var": 1,
        ...
    }
}

用于后端。

在这种情况下,所有干扰 ESLint 规则的检查都应该是 disabled,例如 var used instead of let or const

在新版本的 JetBrains IDES(iDea、WebStorm 等)上,您可以为不同的文件夹配置不同的 JavaScript 语言版本。

例如,如果您正在开发一个 JavaScript 项目,该项目同时使用 ECMAScript 5.1 和更新的 ECMAScript 版本或 JSX 或 Flow,您现在有两种选择可以在 WebStorm 中进行配置。

要为不同的文件夹配置不同的 JavaScript 语言版本, 您需要转到 首选项 |语言和框架 | JavaScript 菜单并单击带有版本的 drop-down 旁边的 按钮,然后 select 一个文件夹及其文件使用的语言版本:

默认情况下,主设置页面上指定的版本将应用于项目中的所有其他 JavaScript 文件。

参考。 WebStorm blog#multiple-js-versions