Wie deaktiviere ich ESLint in vue-cli?


76

Wie deaktiviere ich ein ESlintProjekt, das mit erstellt wurde vue-cli?

preLoaders: [
  {
    test: /\.vue$/,
    loader: 'eslint',
    include: projectRoot,
    exclude: /node_modules/
  },
  {
    test: /\.js$/,
    loader: 'eslint',
    include: projectRoot,
    exclude: /node_modules/
  }
]

Wenn ich die loader: 'eslint'Zeile entferne , wird sie nicht kompiliert, ebenso wie das Setzen einer leeren Zeichenfolge. Ich weiß, dass ich mich ESLintwährend der Initialisierungsphase abmelden kann, aber wie kann ich es deaktivieren, nachdem mein Projekt erstellt wurde?


Welche Vorlage verwenden Sie? Einfaches Webpack?
Himmet Avsar

voll ausgestattetes Webpack
Mahmud Adam

4
Schauen Sie sich die {{#lint}}Blöcke in github.com/vuejs-templates/webpack/blob/… an - können Sie wahrscheinlich den gesamten preLoadersBlock löschen ?
Ceejayoz

@HectorLorenzo hat es verschoben.
Ceejayoz

Antworten:


15

Die Starterprojekte von Vue sind selbst mit einer Vorlagensprache erstellt.

Wenn Sie sich die Vorlagen (die {{#lint}}Bits) ansehen, können Sie den gesamten preLoadersBlock entfernen .


12
Ein billiger Fix für den Fall, dass OP es einfach aktivieren und deaktivieren möchte, ist das Hinzufügen von Pfaden zur .eslintignore-Datei.
Bill Criswell

src/*.jshat nicht geholfen, eslint für src-Datei zu deaktivieren ... möglicherweise erforderlich, um einige zusätzliche Schritte zu unternehmen? @ BillCriswell
Asqan

Jep. Das Ausblocken dieses Teils funktioniert.
Karl Pokus

3
@Asqan möchten Sie möglicherweise Dateien rekursiv verwenden src/**/*.jsund src/**/*.vueignorieren
Antoine

1
Ich gehe davon aus, dass dies so deaktiviert werden kann, bevor der Befehl "vue create ..." verwendet wird. Wie deaktivieren wir eslint nach dem Erstellen eines Projekts?
Robin Nelson

82

Ab 2019, March:

In der vue.config.js:

module.exports = {
  ...
  lintOnSave: false
  ...
}

1
Dies funktioniert gut, wenn Ihre IDE das Flusen basierend auf .eslintrc.js verarbeiten soll, das Flusen jedoch deaktiviert ist, wenn Sie den Entwickler verwenden oder npm-Skripte ansehen.
Sudoqux

1
npm entfernen ist besser. cli.vuejs.org/config/#pages sagt, dass dieser Wert nur berücksichtigt wird, wenn @ vue / cli-plugin-eslint installiert ist.
Marius

79

Hier gibt es einige veraltete Antworten.

Da vue-cli 3 einen Nullkonfigurationsansatz verwendet, können Sie es deaktivieren, indem Sie einfach das Modul deinstallieren:

npm remove @vue/cli-plugin-eslint

6
Da die ursprüngliche Frage 3 Jahre alt ist, sollte dies definitiv als die richtige Antwort markiert werden.
DB2

32

Ab der aktuellen Version (^ 3.0?) Können Sie einfach einstellen:

useEslint: false,

in config / index.js


1
Sie müssen es npm run deverneut tun , nachdem Sie Änderungen an der Konfiguration vorgenommen haben
Anthony Kal

22

in package.jsonÄnderung der Erstellungsschritt:

...
"scripts": {
    "build": "vue-cli-service build --skip-plugins @vue/cli-plugin-eslint",
    ...
},

Das funktioniert! Bei Antworten vor 2020 möchten Sie Dateien Konfigurationen hinzufügen, die nicht mehr Teil der vue-cli-Vorlage sind.
Rocky Kev

Dies funktioniert hervorragend. Beachten Sie jedoch, dass Sie dies zuerst tun müssen, wenn Sie andere Argumente übergeben. Beispiel: vue-cli-service --skip-plugins @ vue / cli-plugin-eslint elektron: build
Sam

8

Öffnen Sie in der neuesten Version die Datei ".eslintrc.js" und setzen Sie "root: false".Geben Sie hier die Bildbeschreibung ein


Natürlich funktioniert es nicht, da rootESLint nur darüber informiert wird, dass alle Regeln aus dem übergeordneten Ordner verworfen werden sollen.
Sznowicki


3

Gehen Sie in die Datei "tslint.json" und schließen Sie alle Dateien in linterOptions aus. Die Standardeinstellungen schließen nur den Ordner node_modules aus. Sie können auch "strict" setzen: false in tsconfig.json

  "linterOptions": {
    "exclude": [
      "*/**"
    ]
  },

Anstatt von

  "linterOptions": {
    "exclude": [
      "node_modules/**"
    ]
  },


2

auf vue cli 4.5 bearbeiten package.json

suchen:

"eslintConfig": {
    "root": true,
    "env": {
        "node": true
    },
    ...
}

Ändern:

"eslintConfig": {
    "root": false,
    "env": {
        "node": false
    },
    ...
}


1

setEslint: false arbeite für mich!

module.exports = {
  dev: {
     ...
    // Use Eslint Loader?
    // If true, your code will be linted during bundling and
    // linting errors and warnings will be shown in the console.
    useEslint: false,
    ...
  },
}

Nein, das hört auf, dass esll im Websturm läuft - ich bekomme keine roten Schnörkel.
Simon

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.