11

我正在尝试转换为,@typescript-eslint但文档似乎非常缺乏。例如,我收到这样的错误:

Line 58:  Expected a semicolon             @typescript-eslint/member-delimiter-style

我不想强制使用分号或逗号。我找到了该规则的文档。https://github.com/bradzacher/eslint-plugin-typescript/blob/master/docs/rules/member-delimiter-style.md

但它似乎没有给出如何在真正的 eslint 文件中配置它的任何示例!有谁知道怎么做?

4

2 回答 2

26

使用 .eslintrc.js 配置文件,您必须将其添加到“规则”部分:

"rules": {
    "@typescript-eslint/member-delimiter-style": ["error", {
      multiline: {
        delimiter: 'none',    // 'none' or 'semi' or 'comma'
        requireLast: true,
      },
      singleline: {
        delimiter: 'semi',    // 'semi' or 'comma'
        requireLast: false,
      },
    }]
}

为“@typescript-eslint/explicit-function-return-type”参数工作。选项来自github 上的规则项目站点

感谢 maxkoryukov 改进了我的原始答案。

于 2019-07-07T11:37:15.043 回答
0

以下是来自 VueJS Typescript 项目的 .eslintrc.js 文件的一些示例规则。

与分号相关的两个不同规则分别用于 javascript/.vue 文件和 typescript/.ts 文件。

rules: {
    'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
    'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
    quotes: [
      'error',
      'single'
    ],
    semi: [
      'error',
      'never'
    ],
    'vue/html-self-closing': [
      'error',
      {
        html: {
          void: 'any',
          normal: 'any',
          component: 'any'
        }
      }
    ],
    '@typescript-eslint/member-delimiter-style': [
      'error',
      {
        multiline: {
          delimiter: 'none',
          requireLast: true
        },
        singleline: {
          delimiter: 'semi',
          requireLast: false
        }
      }
    ]
  }
于 2020-12-29T22:41:02.870 回答