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?

Mahmud Adam
quelle
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 .

ceejayoz
quelle
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
  ...
}
Aakash
quelle
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
Wossname
quelle
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

Eric Grotke
quelle
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",
    ...
},
sfuerte
quelle
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

Felix Jr.
quelle
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/**"
    ]
  },
Panayiotis Hiripis
quelle
2

auf vue cli 4.5 bearbeiten package.json

suchen:

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

Ändern:

"eslintConfig": {
    "root": false,
    "env": {
        "node": false
    },
    ...
}
Savrige
quelle
1

Setzen Sie useEslint: false,einconfig/index.js

siehe dieses Bild

Santosh P.
quelle
Fügen Sie eine Beschreibung hinzu
Mathews Sunny
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,
    ...
  },
}
ZWHmepsy
quelle
Nein, das hört auf, dass esll im Websturm läuft - ich bekomme keine roten Schnörkel.
Simon
0

Gehen Sie zu .eslintrc.jsund fügen Sie Folgendes hinzu:

dev: {
   useEslint: false
},
Nick Vasilakopoulos
quelle