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

Tai*_*chi 1 javascript typescript tslint prettier

我使用更漂亮的tslint和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"]
}
Run Code Online (Sandbox Code Playgroud)

而我.prettierrc就像

{
  "trailingComma": "all",
  "singleQuote": true
}
Run Code Online (Sandbox Code Playgroud)

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

import { getChildrenProceduresSelector } from '@src/entities/procedures/selectors';
Run Code Online (Sandbox Code Playgroud)

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

但是当我手动修复它

import {
  getChildrenProceduresSelector,
} from '@src/entities/procedures/selectors';
Run Code Online (Sandbox Code Playgroud)

它说

[tslint] Replace `?··getChildrenProceduresSelector,?` with `·getChildrenProceduresSelector·` (prettier)
Run Code Online (Sandbox Code Playgroud)

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

Kac*_*zuk 5

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

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

tslint-plugin-prettier-此插件将更漂亮的规则作为tslint规则运行。此外,您需要在中的rule部分启用此功能tslint.json

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

// With tslint@5.0.0+
{
  "extends": [
    "tslint-config-airbnb",
    "tslint-config-prettier",
    "tslint-plugin-prettier"
  ],
  "rules": {
    "prettier": true
  }
}

// With tslint@5.2.0+
{
  "extends": [
    "tslint-config-airbnb",
    "tslint-config-prettier",
    "tslint-plugin-prettier"
  ],
  "rules": {
    "prettier": true
  },
  "rulesDirectory": [
    "tslint-plugin-prettier"
  ]
}
Run Code Online (Sandbox Code Playgroud)