如何使用eslint在Typescript中强制执行多行“ if”条件缩进?

时间:2019-10-24 09:30:06

标签: javascript typescript eslint typescript-eslint

我正在尝试使用Typescript配置eslint以支持Java多行if缩进标准。

为便于记录,Java标准指定应将用于复杂if的多行if条件缩进两次:

if (
        a >= MIN && a <= MAX ||
        b >= MIN && b <= MAX
) {
    alert("Either value is out of range");
}

似乎没有特定于if的条件,因此我尝试使用MemberExpressionCallExpressionFunctionExpression类型,但似乎都不起作用:

我的.eslintrc.json的简化版本如下:

{
  "extends": [
    "eslint:recommended",
    "plugin:@typescript-eslint/recommended"
  ],
  "env": {
    "browser": true,
    "mocha": true
  },
  "parser": "@typescript-eslint/parser",
  "parserOptions": {
    "ecmaVersion": 2015,
    "sourceType": "module",
    "project": "tsconfig.json"
  },
  "plugins": [
    "@typescript-eslint/eslint-plugin"
  ],
  "rules": {
        /* here goes more rules */
    "@typescript-eslint/indent": ["warn", "tab", { "MemberExpression": 2, "CallExpression": {"arguments": 2}, "SwitchCase": 1, "FunctionExpression": {"body": 1, "parameters": 2} }]
        /* more rules here too */
  }
}

我在控制台上收到以下错误:

256:1 warning Expected indentation of 3 tabs but found 4 @typescript-eslint/indent

在Typescript中是否缺少用于配置所述if的设置?

0 个答案:

没有答案