Чому я продовжую отримувати Delete "cr" [гарніший / гарніший]?


153

Я використовую vscode з Prettier 1.7.2 та Eslint 1.7.0. Після кожного нового рядка я отримую:

[eslint] Delete 'cr' [prettier/prettier]

Це файл .eslintrc.json:

{
  "extends": ["airbnb", "plugin:prettier/recommended"],
  "env": {
    "jest": true,
    "browser": true
  },
  "rules": {
    "import/no-extraneous-dependencies": "off",
    "import/prefer-default-export": "off",
    "no-confusing-arrow": "off",
    "linebreak-style": "off",
    "arrow-parens": ["error", "as-needed"],
    "comma-dangle": [
      "error",
      {
        "arrays": "always-multiline",
        "objects": "always-multiline",
        "imports": "always-multiline",
        "exports": "always-multiline",
        "functions": "ignore"
      }
    ],
    "no-plusplus": "off"
  },
  "parser": "babel-eslint",
  "plugins": ["react"],
  "globals": {
    "browser": true,
    "$": true,
    "before": true,
    "document": true
  }
}

.prettierrcфайл:

{
  "printWidth": 80,
  "tabWidth": 2,
  "semi": true,
  "singleQuote": true,
  "trailingComma": "es5",
  "bracketSpacing": true,
  "jsxBracketSameLine": false,
}

Як я можу позбутися цієї помилки?

Відповіді:


315

Спробуйте встановити "endOfLine":"auto"файл у .prettierrc (усередині об'єкта)

Або встановити

"prettier/prettier": ["error", {
     ..
    "endOfLine":"auto"
     ..
  }],

всередині об'єкта правил файлу eslintrc.

Якщо ви використовуєте машину Windows, endOfLine може бути "crlf" на основі вашої конфігурації git.


28
Зміна .eslintrcфайлу спрацювала у мене, але не у .prettierrcфайлі. Не знаю, чому і в чому різниця (я новачок у всіх тегах в OP).
Нео,

3
Я припускаю, що вам може знадобитися розширення Prettier у коді VS. Prettierrc буде дійсним лише в цьому випадку.
Vah Run

3
зміна кінця послідовності рядків з CRLFна LFпрацювала для мене, на машині Windows
Anup

10
Для такого новачка, як я, це потрібно робити. Відкрийте .eslintrc.jsonприсутній у вашому кореневому каталозі ( frontend). Після змін це буде виглядати так:{ "extends": ["react-app", "prettier"], "plugins": ["prettier"], "rules": { "prettier/prettier": ["error", { "endOfLine": "auto" }] } }
SimpleGuy

Додавання до файлу .prettierrc мені працювало, і так, у мене також є розширення.
Еммануель Нені,

200

змінити це налаштування на VSCode.

введіть тут опис зображення


14
Це дозволить вирішити проблему, але лише до тих пір, поки ви не відкриєте якийсь інший вихідний файл за допомогою CRLF. Відповідь вище є більш ефективною.
BobHy

Це спрацювало для мене. Я спробував інші підходи, включаючи редагування конфігураційних файлів, жоден з них не працював.
Amogh Sarpotdar

39

У своїй машині Windows я вирішив це, додавши наведений нижче фрагмент коду в rulesоб’єкт .eslintrc.jsфайлу, який знаходиться в каталозі мого поточного проекту.

    "prettier/prettier": {
      "error",
      {
        "endOfLine": "auto"
      },
    },

Це працювало і на моєму Mac


як може працювати недійсний json?
user2541867


3

у файл .eslintrc.json у побічних ролях додайте цей код, він вирішить цю проблему

      "rules": {
    "prettier/prettier": ["error",{
      "endOfLine": "auto"}
    ]

  }

2

Я знаю, що це старе, але я щойно зіткнувся з проблемою в своїй команді (деякі Mac, деякі Linux, деякі Windows, всі vscode).

рішенням було встановити рядок, який закінчується в налаштуваннях vscode:

.vscode/settings.json

{
    "files.eol": "\n",
}

https://qvault.io/2020/06/18/how-to-get-consistent-line-breaks-in-vs-code-lf-vs-crlf/


2

Спробуйте це. Це працює для мене:

пряжа біг lint --fix

або

npm запустити lint - --fix



0

Виправлено - мій файл .eslintrc.js виглядає так:

module.exports = {
  root: true,
  extends: '@react-native-community',
  rules: {'prettier/prettier': ['error', {endOfLine: 'auto'}]},
};

0

У кореневій панелі відкрийте файл .editorconfig і змініть:

end_of_line = lf

до

end_of_line = auto

Це повинно виправити це для нових файлів.


0

Додайте це у свій файл .prettierrc і відкрийте VSCODE

"endOfLine": "auto"

0

Усі відповіді вище є правильними, але коли я використовую Windows і вимикаю розширення Prettier ESLint, rvest.vs-code-prettier-eslint проблема буде виправлена.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.