如何用单个道具用括号修复更漂亮和更薄的错误?

时间:2018-08-15 11:27:45

标签: javascript typescript tslint prettier

我使用更漂亮和更薄的https://github.com/alexjoverm/tslint-config-prettierhttps://github.com/ikatyang/tslint-plugin-prettier

我的tslint.json就像

{
  "defaultSeverity": "error",
  "extends": [
    "tslint-config-airbnb",
    "tslint-react",
    "tslint-config-prettier"
  ],
  "jsRules": {},
  "rules": {
    "max-line-length": [true, 80],
    "import-name": false,
    "variable-name": false,
    "jsx-boolean-value": false,
    "jsx-no-multiline-js": false,
    "no-else-after-return": false,
    "object-shorthand-properties-first": false,
    "ter-arrow-parens": false,
    "ter-indent": false,
    "prettier": true
  },
  "rulesDirectory": ["tslint-plugin-prettier"]
}

我的.prettierrc就像

{
  "trailingComma": "all",
  "singleQuote": true
}

tslint --fix "src/**/*.ts"之后,出现如下代码:

import { getChildrenProceduresSelector } from '@src/entities/procedures/selectors';

错误提示[tslint] Exceeds maximum line length of 80 (max-line-length)

但是当我手动将其修复为

import {
  getChildrenProceduresSelector,
} from '@src/entities/procedures/selectors';

[tslint] Replace `⏎··getChildrenProceduresSelector,⏎` with `·getChildrenProceduresSelector·` (prettier)

我将VSCode与tslint和更漂亮的扩展一起使用。 我的tslint命令说同样的错误。 如何解决此冲突?

1 个答案:

答案 0 :(得分:4)

您的配置中的错误来自"max-line-length": [true, 80]。它与更漂亮的规则相冲突。如果要设置max-line,则应在.prettierc文件-> "printWidth": 80中进行设置。

tslint-config-prettier-此配置会禁用tslint中与prettier冲突的所有规则(因此,在您的情况下,此插件已禁用max-line中的tslint,但是您可以在rules部分中手动设置它)

tslint-plugin-prettier-此插件像tslint规则一样运行更漂亮的规则。另外,您需要在rule的{​​{1}}部分启用此功能。

将所有这些考虑在内,您的配置应大致如下所示:

tslint.json