469 votes

Pourquoi continue-je à obtenir Delete 'cr' [prettier/prettier]?

Je suis en train d'utiliser vscode avec Prettier 1.7.2 et Eslint 1.7.0. Après chaque saut de ligne j'obtiens :

[eslint] Supprimer 'cr' [prettier/prettier]

Voici le fichier .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
  }
}

Le fichier .prettierrc :

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

Comment puis-je me débarrasser de cette erreur ?

4 votes

Jetez un œil à votre fichier .eslintrc.js. En supprimant 'plugin:prettier/recommended' du tableau extends, cela devrait résoudre le problème.

0 votes

Pourquoi étendez-vous "plugin:prettier/recommended" ?

0 votes

Vous pouvez essayer de désactiver l'extension ESLint de VSCode

740voto

Vah Run Points 4347

Essayez de définir "endOfLine":"auto" dans votre fichier .prettierrc (ou .prettierrc.json) (à l'intérieur de l'objet)

Ou définissez

'prettier/prettier': [
  'error',
  {
    'endOfLine': 'auto',
  }
]

à l'intérieur de l'objet des règles du fichier eslintrc.

Si vous utilisez un ordinateur Windows, endOfLine peut être "crlf" en fonction de votre configuration git.

93 votes

Changer le fichier .eslintrc a fonctionné pour moi, mais pas le fichier .prettierrc. Aucune idée de pourquoi ou quelle est la différence (je suis nouveau sur tous les tags de l'OP).

10 votes

Mon hypothèse est que vous pourriez avoir besoin de l'extension Prettier dans le VS Code. Le prettierrc ne sera valable que dans ce scénario.

7 votes

Changer la séquence de fin de ligne de CRLF à LF a fonctionné pour moi, sur une machine windows.

504voto

xudong zhang Points 2837

Changez ce paramètre sur VSCode.

entrez la description de l'image ici

27 votes

Cela résoudrait le problème, mais seulement jusqu'à ce que vous ouvriez un autre fichier source avec CRLF. La réponse ci-dessus est plus efficace.

5 votes

Cela a fonctionné pour moi. J'ai essayé d'autres approches, y compris la modification des fichiers de configuration, mais aucun d'entre eux n'a fonctionné.

1 votes

Cela a sauvé ma journée. J'utilise VS Code avec Window. Cela pourrait être dû au même commit d'un autre système

171voto

Jake Points 1007

Sur mon ordinateur windows, j'ai résolu ce problème en ajoutant le code suivant dans l'objet rules du fichier .eslintrc.js présent dans le répertoire de mon projet actuel.

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

Cela a également fonctionné sur mon Mac.

1 votes

@brijs que veux-tu dire?

0 votes

@brijs la syntaxe de la réponse est correcte...

0 votes

Oh oui bébé commun.

40voto

Mohammed_Alreai Points 858

Dans le fichier .eslintrc.json ajouter ce code à l'intérieur des rôles résoudra ce problème

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

  }

0 votes

Cela vient de résoudre le problème pour moi si quelqu'un d'autre rencontre ce problème avec les modèles par défaut de Nest.js

19voto

Hamza Waleed Points 173

Fixé - Mon fichier .eslintrc.js ressemble à ceci :

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

1 votes

N'a pas fonctionné pour moi!

2 votes

Merci beaucoup! Ça a bien fonctionné pour moi même quand je change LF et CRLF.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X