Eslint 和 Prettier 冲突(eslint-config-prettier 不工作)

Eslint & Prettier conflicts (eslint-config-prettier not wokring)

我有一个简单的例子,其中语句没有分号。 Prettier 设置的 semi 为 false,而 eslint 的 semi 为 true。为了不让它们之间发生冲突,我安装了 eslint-config-prettier。但是我仍然遇到分号错误。它本应优先于更漂亮的设置,但事实并非如此。

var var1, var2
var1 = 3
var2 = 4
var a = { name: "" }


 "devDependencies": {
    "eslint": "^7.8.1",
    "eslint-config-prettier": "^6.11.0",
    "eslint-plugin-prettier": "^3.1.4",
    "prettier": "^2.1.1"
  }

.prettierrcc

{
  "arrowParens": "always",
  "bracketSpacing": true,
  "htmlWhitespaceSensitivity": "css",
  "insertPragma": false,
  "jsxBracketSameLine": false,
  "jsxSingleQuote": false,
  "printWidth": 86,
  "proseWrap": "preserve",
  "quoteProps": "preserve",
  "requirePragma": false,
  "semi": false,
  "singleQuote": false,
  "tabWidth": 2,
  "trailingComma": "es5",
  "useTabs": false,
  "vueIndentScriptAndStyle": false
}

.eslintrcc

{
  "root": true,
  "env": {
    "node": true
  },
  "extends": ["prettier"],
  "plugins": ["prettier"],
  "rules": {
    "semi": ["error", "always"],
    "prettier/prettier": ["error"]
  }
}

我收到以下错误:

/home/nick/Documents/Coding/NodeJs/simple-node/vanilla.js
  1:17  error  Missing semicolon  semi
  2:11  error  Missing semicolon  semi
  3:9   error  Missing semicolon  semi
  4:21  error  Missing semicolon  semi

您正在覆盖默认情况下确实设置为“关闭”(link to config) 的 Prettier 配置,并使用与您想要的相反的自定义规则。简单地删除它:

  "rules": {
    "prettier/prettier": ["error"]
  }