Heim Web-Frontend js-Tutorial Verwenden der Eslint-Konfiguration im Webpack (ausführliches Tutorial)

Verwenden der Eslint-Konfiguration im Webpack (ausführliches Tutorial)

Jun 11, 2018 am 10:23 AM
eslint webpack

In diesem Artikel wird hauptsächlich die detaillierte Erklärung der von Webpack eingeführten Eslint-Konfiguration vorgestellt. Jetzt werde ich sie mit Ihnen teilen und Ihnen eine Referenz geben.

Eslint im Webpack verwenden

Damit Webpack eslint unterstützt, müssen Sie zunächst eslint-loader installieren. Der Befehl lautet wie folgt:

npm install --save-dev eslint-loader
Nach dem Login kopieren

Fügen Sie im Webpack den folgenden Code zu .config.js hinzu:

{
  test: /\.js$/,
  loader: 'eslint-loader',
  enforce: "pre",
  include: [path.resolve(__dirname, 'src')], // 指定检查的目录
  options: { // 这里的配置项参数将会被传递到 eslint 的 CLIEngine 
    formatter: require('eslint-friendly-formatter') // 指定错误报告的格式规范
  }
}
Nach dem Login kopieren

Hinweis: Der Standardformatierer ist stilvoll. Wenn Sie einen Drittanbieter verwenden möchten, können Sie das Plug-in installieren, z der eslint-freundliche Formatierer im obigen Beispiel.

Zweitens, wenn Sie möchten, dass das Webpack über Eslint-Funktionen verfügt, müssen Sie eslint installieren. Der Befehl lautet wie folgt:

npm install --save-dev eslint
Nach dem Login kopieren

Wenn das Projekt schließlich diese Eslin-Regeln verwenden möchte, können Sie es erstellen Eine Konfigurationsdatei '.eslintrc .js', der Code lautet wie folgt:

module.exports = {
  root: true,  
  parserOptions: {
    sourceType: 'module'
  },
  env: {
    browser: true,
  },
  rules: {
    "indent": ["error", 2],
    "quotes": ["error", "double"],
    "semi": ["error", "always"],
    "no-console": "error",
    "arrow-parens": 0
  }
}
Nach dem Login kopieren

Auf diese Weise wurde eine einfache Webpack-Einführung in eslint abgeschlossen.

Hier werden wir über die Konfiguration und Verwendung von eslintrc.js sprechen. Weitere Informationen finden Sie unter http://eslint.cn/docs/user-guide

eslint-Konfiguration Elemente

  1. root begrenzt den Verwendungsbereich der Konfigurationsdatei

  2. Parser gibt den Eslint-Parser an

  3. parserOptions legt Parsing-Serveroptionen fest

  4. extends gibt die Eslint-Spezifikation an

  5. Plugins bezieht sich auf Plug-ins von Drittanbietern

  6. env gibt die Hostumgebung an, in der der Code ausgeführt wird

  7. Regeln Aktivieren Sie zusätzliche Regeln oder überschreiben Sie die Standardregeln

  8. globals Benutzerdefinierte globale Variablen im Code deklariert

Sind die Regelkonfigurationselemente in der Konfigurationsdatei unverzichtbar, wenn wir eslint verwenden?

Die Antwort ist ja. Wir müssen jedoch keine Regeln anpassen. Wir können Regeln von Drittanbietern verwenden. Hier verwenden wir das erweiterte Konfigurationselement.

erweitert

Wir können die offiziell von eslint empfohlenen oder die von einigen großen Unternehmen bereitgestellten verwenden, wie zum Beispiel: aribnb, google, standard.

Wir nutzen bei der Entwicklung grundsätzlich Dritte.

Offizielle Empfehlung

Fügen Sie einfach den folgenden Code in .eslintrc.js hinzu:

extends: 'eslint:recommended',
extends: 'eslint:all',
Nach dem Login kopieren

Einzelheiten finden Sie in der offiziellen Regeltabelle

Dritter- Party-Sharing

Um die Drittanbieter-Freigabe zu nutzen, müssen wir im Allgemeinen den entsprechenden Plug-in-Code wie folgt installieren:

npm install --save-dev eslint-config-airbnb // bnb
npm install --save-dev eslint-config-standard // standard
Nach dem Login kopieren

Fügen Sie den folgenden Code in .eslintrc.js hinzu:

extends: 'eslint:google',
// or
extends: 'eslint:standard',
Nach dem Login kopieren

Um diese Erweiterungen von Drittanbietern verwenden zu können, müssen wir manchmal einige Plug-Ins aktualisieren, z. B. Standard: eslint-plugin-import

Keine Panik, wir müssen nur diese Plug-Ins installieren Schritt für Schritt entsprechend den Fehlermeldungen.

Obwohl diese Erweiterungen von Drittanbietern sehr gut sind, müssen wir manchmal einige personalisiertere Regeln definieren und Regelkonfigurationselemente hinzufügen.

Konfigurationsregeln

Fügen Sie Regeln in der Datei .eslintrc.js hinzu. Der Code lautet wie folgt:

{
  "rules": {
    "semi": ["error", "always"],
    "quotes": ["error", "double"]
  }
}
Nach dem Login kopieren

„semi“ und „quotes“ sind die Namen der Regeln in ESLint. Der erste Wert ist die Fehlerstufe, die einer der folgenden Werte sein kann:

  1. „off“ oder 0 – schaltet die Regel aus

  2. „warn“ oder 1 – behandelt die Regel als Warnung (hat keinen Einfluss auf den Exit-Code)

  3. „error“ oder 2 – behandelt die Regel als Fehler (der Exit-Code ist 1)

Diese Regeln sind im Allgemeinen in zwei Kategorien unterteilt:

  1. Fügen Sie diejenigen hinzu, die nicht in den Standard- oder Drittanbieterbibliotheken gefunden werden

  2. Überschreiben Sie die Standard- oder Drittbibliothek

Möglicherweise gibt es in unserem Projekt noch einige andere Dateien, die ebenfalls formatiert werden müssen, wie zum Beispiel: html, vue, reagieren usw. Für die Verarbeitung dieser Dateien müssen wir Plug-Ins von Drittanbietern einführen.

plugins (html)

Installieren Sie eslint-plugin-html. Der Befehl lautet wie folgt:

npm install --save-dev eslint-plugin-html
Nach dem Login kopieren

Dieses Plug-in erinnert an Modulskripte um das Durchsuchen zu simulieren. Dies gilt nicht für Modulskripte, da dies nicht für gemeinsam genutzte globale Variablen gilt.

Dieses Plug-in kann auch Dateien erweitern, wie zum Beispiel: .vue, .jsx

.eslintrc.js, fügen Sie die folgenden Konfigurationselemente hinzu:

settings: {
  'html/html-extensions': ['.html', '.vue'],
  'html/indent': '+2',
},
Nach dem Login kopieren

Für diese Verwendung eslint Wir können eslint --ext .html, .vue src verwenden, um Dateien mit der Erweiterung -pulgin-html zu erkennen. Wenn wir sie während des Schreibens erkennen möchten, können wir den Loader der entsprechenden Datei zur Verarbeitung verwenden. Führen Sie dann npm run dev aus, um die Funktion auszuführen. Die Funktion der Überprüfung beim Schreiben.

In der Entwicklung können wir je nach Bedarf unterschiedliche .eslintrc.js-Dateien in verschiedenen Verzeichnissen desselben Projekts verwenden. In diesem Fall müssen wir das Stammverzeichnis des Konfigurationselements verwenden.

Nutzungsumfang einschränken (root: true)

Wenn wir unterschiedliche .eslintrc in verschiedenen Verzeichnissen verwenden möchten, müssen wir Folgendes zum Verzeichnis „Configuration“ hinzufügen item:

{
  "root": true
}
Nach dem Login kopieren

Wenn wir es nicht festlegen, wird die Suche fortgesetzt, bis das aktualisierte Verzeichnis eine Konfigurationsdatei hat, das Stammverzeichnis wird verwendet, wodurch die aktuelle Konfiguration des Verzeichnisses erfolgt Funktionsproblem.

In der Entwicklung müssen wir unterschiedliche Parser für unterschiedliche Situationen verwenden, und der, den wir am häufigsten verwenden, ist babel-eslint.

Parser (Parser angeben)

babel-eslint 解析器是一种使用频率很高的解析器,因为现在很多公司的很多项目目前都使用了es6,为了兼容性考虑基本都使用babel插件对代码进行编译。而用babel编译后的代码使用 babel-eslint 这款解析器可以避免不必要的麻烦。

babel-eslint 安装命令:

npm install --save-dev babel-eslint
Nach dem Login kopieren

在 .eslintrc.js 配置文件中添加如下配置项代码:

parser: 'babel-eslint',
Nach dem Login kopieren

如果你使用的默认解析器的话,且在代码中使用了浏览器有兼容性的问题的js新特性,使用webpack编译就会出现问题,这时我们一般装最新的eslint或者安装是使用 babel-eslint 来解决问题。

env(环境)

在 .eslintrc.js 中添加如下代码:

"env": {
  "browser": true, //
  "node": true //
}
Nach dem Login kopieren

指定了环境,你就可以放心的使用它们的全局变量和属性。

global

指定全局变量。

在 .eslintrc.js 中添加如下代码:

"globals": {
  "var1": true,
  "var2": false 
}
Nach dem Login kopieren

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

在JS中如何改变单物体透明度

在JS中如何实现通过拖拽改变物体大小

在vue中使用cli如何实现重构多页面脚手架

Das obige ist der detaillierte Inhalt vonVerwenden der Eslint-Konfiguration im Webpack (ausführliches Tutorial). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

VUE3-Erste-Schritte-Tutorial: Paketieren und Erstellen mit Webpack VUE3-Erste-Schritte-Tutorial: Paketieren und Erstellen mit Webpack Jun 15, 2023 pm 06:17 PM

Vue ist ein hervorragendes JavaScript-Framework, das uns dabei helfen kann, schnell interaktive und effiziente Webanwendungen zu erstellen. Vue3 ist die neueste Version von Vue, die viele neue Features und Funktionen einführt. Webpack ist derzeit einer der beliebtesten JavaScript-Modulpaketierer und Build-Tools, der uns bei der Verwaltung verschiedener Ressourcen in unseren Projekten helfen kann. In diesem Artikel wird erläutert, wie Sie Webpack zum Verpacken und Erstellen von Vue3-Anwendungen verwenden. 1. Webpack installieren

Was ist der Unterschied zwischen Vite und Webpack? Was ist der Unterschied zwischen Vite und Webpack? Jan 11, 2023 pm 02:55 PM

Unterschiede: 1. Die Startgeschwindigkeit des Webpack-Servers ist langsamer als die von Vite. Da Vite beim Start nicht gepackt werden muss, müssen keine Modulabhängigkeiten analysiert und kompiliert werden, sodass die Startgeschwindigkeit sehr hoch ist. 2. Das Hot-Update von Vite ist in Bezug auf HRM schneller. Wenn sich der Inhalt eines bestimmten Moduls ändert, muss der Browser das Modul einfach erneut anfordern. 3. Vite verwendet esbuild, um Abhängigkeiten vorab zu erstellen, während Webpack auf Knoten basiert. 4. Die Ökologie von Vite ist nicht so gut wie die von Webpack und die Loader und Plug-Ins sind nicht umfangreich genug.

So löschen Sie Eslint in React So löschen Sie Eslint in React Dec 30, 2022 am 09:46 AM

So löschen Sie eslint aus React: 1. Führen Sie den Befehl „npm run eject“ aus. 2. Ändern Sie den Code in package.json in „eslintConfig“: {“extends“: [“react-app“, „react-app/“ jest" ],"rules": {"no-undef": "off"...}" 3. Starten Sie das Projekt neu.

Verwendung von PHP und Webpack für die modulare Entwicklung Verwendung von PHP und Webpack für die modulare Entwicklung May 11, 2023 pm 03:52 PM

Mit der kontinuierlichen Weiterentwicklung der Webentwicklungstechnologie sind die Front-End- und Back-End-Trennung sowie die modulare Entwicklung zu einem weit verbreiteten Trend geworden. PHP ist eine häufig verwendete Back-End-Sprache. Bei der modularen Entwicklung müssen wir einige Tools verwenden, um Module zu verwalten und zu packen. In diesem Artikel wird die Verwendung von PHP und Webpack für die modulare Entwicklung vorgestellt. 1. Was ist modulare Entwicklung? Unter modularer Entwicklung versteht man die Zerlegung eines Programms in verschiedene unabhängige Module.

Wie konvertiert Webpack das ES6-Modul in das ES5-Modul? Wie konvertiert Webpack das ES6-Modul in das ES5-Modul? Oct 18, 2022 pm 03:48 PM

Konfigurationsmethode: 1. Verwenden Sie die Importmethode, um den ES6-Code in die gepackte JS-Codedatei einzufügen. 2. Verwenden Sie das NPM-Tool, um das Babel-Loader-Tool zu installieren. Die Syntax lautet „npm install -D babel-loader @babel/core“. @babel/preset-env“; 3. Erstellen Sie die Konfigurationsdatei „.babelrc“ des Babel-Tools und legen Sie die Transkodierungsregeln fest; 4. Konfigurieren Sie die Verpackungsregeln in der Datei webpack.config.js.

Verwenden Sie Spring Boot und Webpack, um Front-End-Projekte und Plug-in-Systeme zu erstellen Verwenden Sie Spring Boot und Webpack, um Front-End-Projekte und Plug-in-Systeme zu erstellen Jun 22, 2023 am 09:13 AM

Da die Komplexität moderner Webanwendungen immer weiter zunimmt, wird die Entwicklung exzellenter Front-End-Engineering- und Plug-in-Systeme immer wichtiger. Mit der Popularität von Spring Boot und Webpack sind sie zu einer perfekten Kombination für die Erstellung von Front-End-Projekten und Plug-in-Systemen geworden. SpringBoot ist ein Java-Framework, das Java-Anwendungen mit minimalen Konfigurationsanforderungen erstellt. Es bietet viele nützliche Funktionen, wie z. B. die automatische Konfiguration, sodass Entwickler Webanwendungen schneller und einfacher erstellen und bereitstellen können. W

Was ist Webpack? Detaillierte Erklärung der Funktionsweise? Was ist Webpack? Detaillierte Erklärung der Funktionsweise? Oct 13, 2022 pm 07:36 PM

Webpack ist ein Modulpaketierungstool. Es erstellt Module für verschiedene Abhängigkeiten und packt sie alle in verwaltbare Ausgabedateien. Dies ist besonders nützlich für Single-Page-Anwendungen (der heutige De-facto-Standard für Webanwendungen).

Welche Dateien können Vue-Webpack-Pakete enthalten? Welche Dateien können Vue-Webpack-Pakete enthalten? Dec 20, 2022 pm 07:44 PM

In Vue kann Webpack JS-, CSS-, Bilder-, JSON- und andere Dateien in geeignete Formate für die Browserverwendung packen; in Webpack können JS-, CSS-, Bilder-, JSON- und andere Dateitypen als Module verwendet werden. Verschiedene Modulressourcen im Webpack können gepackt und zu einem oder mehreren Paketen zusammengeführt werden. Während des Verpackungsprozesses können die Ressourcen verarbeitet werden, z. B. durch Komprimieren von Bildern, Konvertieren von SCSS in CSS, Konvertieren der ES6-Syntax in ES5 usw., was möglich ist Wird anhand des HTML-Dateityps erkannt.

See all articles