Eslint和更漂亮的冲突eslint-config-prettier不起作用

问题描述

我有一个简单的示例,其中的语句没有分号。更漂亮的设置将准字符设置为false,但将eslint设置为准字符为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

解决方法

您正在覆盖一个Prettier配置,该配置实际上已默认设置为“关闭”(link to config),并且使用自定义规则执行与您想要的相反的操作。只需将其删除:

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