


Ausführliche Erläuterung der modularen Webpack-Verwaltung und der Verwendung von Verpackungstools
Dieses Mal werde ich Ihnen die Verwendung der modularen Verwaltungs- und Verpackungstools von Webpack ausführlich erklären. Was sind die Vorsichtsmaßnahmen für die Verwendung der modularen Verwaltungs- und Verpackungstools von Webpack? Schauen Sie mal rein.
Einführung in Webpack
Webpack ist derzeit das beliebteste Front-End-Tool für die modulare Verwaltung und Verpackung von Ressourcen. Es kann viele lose Module in Front-End-Ressourcen packen, die gemäß Abhängigkeiten und Regeln mit der Bereitstellung in der Produktionsumgebung konsistent sind. Sie können den Code von bei Bedarf geladenen Modulen auch trennen und asynchron laden, bis sie tatsächlich
benötigt werden. Durch die Loader-Konvertierung kann jede Form von Ressource als Modul betrachtet werden, z. B. CommonJs-Module, AMD-Module, ES6-Module, CSS, Bilder, JSON, Coffeescript, LESS usw.
Entwicklung des Modulsystems<script> Tag</p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><script src="module1.js"></script> <script src="module2.js"></script> <script src="libraryA.js"></script> <script src="module3.js"></script></pre><div class="contentsignin">Nach dem Login kopieren</div></div> <p style="text-align: left;">Dies ist die originellste Methode zum Laden von JavaScript-Dateien. Wenn jede Datei als Modul betrachtet wird, werden ihre Schnittstellen normalerweise im globalen Kontext angezeigt Bereich, dh im Fensterobjekt definiert, </p> <p style="text-align: left;">Schnittstellenaufrufe verschiedener Module befinden sich im selben Bereich. Einige komplexe Frameworks verwenden das Konzept von <a href="http://www.php.cn/wiki/220.html" target="_blank">Namespace</a> Organisieren Sie die Schnittstellen dieser Module. Ein typisches Beispiel ist die YUI-Bibliothek. </p> <p style="text-align: left;">Diese ursprüngliche Lademethode weist einige offensichtliche Nachteile auf: </p> <ol class=" list-paddingleft-2"> <li><p style="text-align: left;">Es ist leicht, Variablenkonflikte im globalen Bereich zu verursachen</p></li> <li><p style="text-align: left;"> Dateien können nur in der Reihenfolge geladen werden, in der <script> In großen Projekten sind verschiedene Ressourcen schwer zu verwalten und langfristig angesammelte Probleme führen zu einer chaotischen Codebasis</script>
Die CommonJS-Spezifikation ist eine Modulform, die zur Lösung des Umfangsproblems von JavaScript definiert ist und es jedem Modul ermöglicht, in seinem eigenen Namensraum auszuführen. Der Hauptinhalt dieser Spezifikation besteht darin, dass Module externe Variablen oder Schnittstellen über module.exports exportieren und die Ausgabe anderer Module über require() in den aktuellen Modulbereich importieren müssen. Ein intuitives Beispiel// moduleA.js
module.exports = function( value ){
return value * 2;
}
// moduleB.js
var multiplyBy2 = require('./moduleA');
var result = multiplyBy2(4);
AMD-Spezifikation
AMD (Asynchronous Module Definition) ist für Browserumgebungen konzipiert, weil die Das CommonJS-Modulsystem wird synchron geladen und die aktuelle Browserumgebung ist nicht bereit, Module synchron zu laden.
Das Modul wird im Abschluss durch die Definitionsfunktion im folgenden Format definiert: define(id?: String, dependencies?: String[], factory: Function|Object);
Einige Anwendungsfälle
Definieren Sie ein Modul mit dem Namen myModule, das vom jQuery-Modul abhängt:
define('myModule', ['jquery'], function($) { // $ 是 jquery 模块的输出 $('body').text('hello world'); }); // 使用 require(['myModule'], function(myModule) {});
Hinweis: Im Webpack hat der Modulname in Require nur einen lokalen Gültigkeitsbereich . Der Modulname in js hat einen globalen Gültigkeitsbereich und kann global referenziert werden.
Definieren Sie ein anonymes Modul ohne ID-Wert, das normalerweise als Startfunktion der Anwendung verwendet wird:
define(['jquery'], function($) { $('body').text('hello world'); });
AMD verwendet auch die require()-Anweisung zum Laden von Modulen, erfordert jedoch im Gegensatz zu CommonJS zwei Parameter
Der erste Parameter [Modul] ist ein Array, dessen Mitglieder die zu ladenden Module sind; der zweite Parameter-Callback ist die
Callback-Funktionnach erfolgreichem Laden. Wenn der vorherige Code in AMD-Form umgeschrieben wird, sieht er folgendermaßen aus:
math.add() und das Laden des Mathematikmoduls sind nicht synchronisiert und der Browser friert nicht ein. Daher ist AMD offensichtlich besser für Browserumgebungen geeignet
Derzeit gibt es zwei Haupt-Javascript-Bibliotheken, die die AMD-Spezifikation implementieren: require.js und curl.js
require(['math'], function (math) { math.add(2, 3); });
Webpack ist ein Modul-Bundler. Es führt eine statische Analyse basierend auf Modulabhängigkeiten durch und generiert dann gemäß den angegebenen Regeln entsprechende statische Ressourcen für diese Module.
Webpack 的特点
代码拆分
Loader
智能解析
插件系统
快速运行
webpack基本使用
创建项目根目录
初始化
npm init 或 npm init -y
全局安装
npm install webpack -g
局部安装,在项目目录下安装
npm install webpack --save-dev
--save: 将安装的包的信息保存在package中
--dev:开发版本,只是项目构建的时候使用,项目构建完成后并不依赖的文件
如果使用web开发工具,单独安装
npm install webpack-dev-server --save-dev
基本使用
首先创建一个静态页面 index.html 和一个 JS 入口文件 entry.js:
<!-- index.html --> <html> <head> <meta charset="utf-8"> </head> <body> <script src="bundle.js"></script> </body> </html>
创建entry.js
// entry.js : 在页面中打印出一句话 document.write('It works.')
然后编译 entry.js并打包到 bundle.js文件中
// 使用npm命令 webpack entry.js bundle.js
使用模块
1.创建模块module.js,在内部导出内容
module.exports = 'It works from module.js'
2.在entry.js中使用自定义的模块
//entry.js document.write('It works.') document.write(require('./module.js')) // 添加模块
加载css模块
1.安装css-loader
npm install css-loader style-loader --save-dev
2.创建css文件
//style.css body { background: yellow; }
3.修改 entry.js:
require("!style-loader!css-loader!./style.css") // 载入 style.css document.write('It works.') document.write(require('./module.js'))
创建配置文件webpack.config.js
1.创建文件
var webpack = require('webpack') module.exports = { entry: './entry.js', output: { path: dirname, filename: 'bundle.js' }, module: { loaders: [ //同时简化 entry.js 中的 style.css 加载方式:require('./style.css') {test: /\.css$/, loader: 'style-loader!css-loader'} ] } }
2.修改 entry.js 中的 style.css 加载方式:require('./style.css')
3.运行webpack
在命令行页面直接输入webpack
插件使用
1.插件安装
//添加注释的插件 npm install --save-devbannerplugin
2.配置文件的书写
var webpack = require('webpack') module.exports = { entry: './entry.js', output: { path: dirname, filename: 'bundle.js' }, module: { loaders: [ //同时简化 entry.js 中的 style.css 加载方式:require('./style.css') { test: /\.css$/, loader: 'style-loader!css-loader' } ], plugins: [ //添加注释的插件 new webpack.BannerPlugin('This file is created by zhaoda') ] } }
3.运行webpack
// 可以在bundle.js的头部看到注释信息 /*! This file is created by zhaoda */
开发环境
webpack
--progress : 显示编译的进度
--colors : 带颜色显示,美化输出
--watch : 开启监视器,不用每次变化后都手动编译
12.4.7.1. webpack-dev-server
开启服务,以监听模式自动运行
1.安装包
npm install webpack-dev-server -g --save-dev
2.启动服务
实时监控页面并自动刷新
webpack-dev-server --progress --colors
自动编译
1.安装插件
npm install --save-dev html-webpack-plugin
2.在配置文件中导入包
var htmlWebpackPlugin = require('html-webpack-plugin')
3.在配置文件中使用插件
plugins: [ //添加注释的插件 new webpack.BannerPlugin('This file is created by zhaoda'), //自动编译 new htmlWebpackPlugin({ title: "index", filename: 'index.html', //在内存中生成的网页的名称 template: './index.html' //生成网页名称的依据 }) ]
4.运行项目
webpack--save-dev
相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
推荐阅读:
Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der modularen Webpack-Verwaltung und der Verwendung von Verpackungstools. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen





So optimieren Sie die Wartbarkeit von Java-Code: Erfahrungen und Ratschläge Im Softwareentwicklungsprozess ist das Schreiben von Code mit guter Wartbarkeit von entscheidender Bedeutung. Wartbarkeit bedeutet, dass Code leicht verstanden, geändert und erweitert werden kann, ohne dass es zu unerwarteten Problemen oder zusätzlichem Aufwand kommt. Für Java-Entwickler ist die Optimierung der Wartbarkeit von Code ein wichtiges Thema. In diesem Artikel werden einige Erfahrungen und Vorschläge geteilt, um Java-Entwicklern dabei zu helfen, die Wartbarkeit ihres Codes zu verbessern. Befolgen Sie standardisierte Benennungsregeln. Standardmäßige Benennungsregeln können die Lesbarkeit des Codes verbessern.

Python ist eine einfache, leicht zu erlernende und effiziente Programmiersprache. Wenn wir jedoch Python-Code schreiben, können Probleme mit übermäßiger Codekomplexität auftreten. Wenn diese Probleme nicht gelöst werden, wird es schwierig, den Code zu warten, fehleranfällig zu machen und die Lesbarkeit und Skalierbarkeit des Codes zu verringern. In diesem Artikel besprechen wir daher, wie man Codekomplexitätsfehler in Python-Code beheben kann. Verständnis der Codekomplexität Die Codekomplexität ist ein Maß für die Art des Codes, der schwer zu verstehen und zu warten ist. In Python gibt es einige Indikatoren, die verwendet werden können

Python wird als höhere Programmiersprache häufig in der Softwareentwicklung verwendet. Obwohl Python viele Vorteile bietet, besteht ein Problem, mit dem viele Python-Programmierer häufig konfrontiert sind, darin, dass der Code weniger wartbar ist. Die Wartbarkeit von Python-Code umfasst die Lesbarkeit, Skalierbarkeit und Wiederverwendbarkeit des Codes. In diesem Artikel konzentrieren wir uns darauf, wie das Problem der schlechten Wartbarkeit von Python-Code gelöst werden kann. 1. Lesbarkeit des Codes Die Lesbarkeit des Codes bezieht sich auf die Lesbarkeit des Codes, die den Kern der Wartbarkeit des Codes darstellt.

Webstandards sind eine Reihe von Spezifikationen und Richtlinien, die vom W3C und anderen verwandten Organisationen entwickelt wurden. Sie umfassen die Standardisierung von HTML, CSS, JavaScript, DOM, Web-Zugänglichkeit und Leistungsoptimierung , Wartbarkeit und Leistung. Das Ziel von Webstandards besteht darin, die konsistente Anzeige und Interaktion von Webinhalten auf verschiedenen Plattformen, Browsern und Geräten zu ermöglichen und so ein besseres Benutzererlebnis und eine bessere Entwicklungseffizienz zu gewährleisten.

Cockpit ist eine webbasierte grafische Oberfläche für Linux-Server. Es soll vor allem neuen/erfahrenen Benutzern die Verwaltung von Linux-Servern erleichtern. In diesem Artikel besprechen wir die Cockpit-Zugriffsmodi und wie Sie den Administratorzugriff von CockpitWebUI auf das Cockpit umstellen. Inhaltsthemen: Cockpit-Eingabemodi Ermitteln des aktuellen Cockpit-Zugriffsmodus Aktivieren des Verwaltungszugriffs für das Cockpit über CockpitWebUI Deaktivieren des Verwaltungszugriffs für das Cockpit über CockpitWebUI Fazit Cockpit-Eingabemodi Das Cockpit verfügt über zwei Zugriffsmodi: Eingeschränkter Zugriff: Dies ist die Standardeinstellung für den Cockpit-Zugriffsmodus. In diesem Zugriffsmodus können Sie vom Cockpit aus nicht auf den Webbenutzer zugreifen

Das Web ist ein globales Weitverkehrsnetz, auch World Wide Web genannt, eine Anwendungsform des Internets. Das Web ist ein auf Hypertext und Hypermedia basierendes Informationssystem, das es Benutzern ermöglicht, durch Hyperlinks zwischen verschiedenen Webseiten zu wechseln und Informationen abzurufen. Die Grundlage des Webs ist das Internet, das einheitliche und standardisierte Protokolle und Sprachen verwendet, um den Datenaustausch und Informationsaustausch zwischen verschiedenen Computern zu ermöglichen.

PHP gehört zum Backend in der Webentwicklung. PHP ist eine serverseitige Skriptsprache, die hauptsächlich zur Verarbeitung serverseitiger Logik und zur Generierung dynamischer Webinhalte verwendet wird. Im Vergleich zur Front-End-Technologie wird PHP eher für Back-End-Vorgänge wie die Interaktion mit Datenbanken, die Verarbeitung von Benutzeranfragen und die Generierung von Seiteninhalten verwendet. Anschließend wird anhand konkreter Codebeispiele die Anwendung von PHP in der Backend-Entwicklung veranschaulicht. Schauen wir uns zunächst ein einfaches PHP-Codebeispiel zum Herstellen einer Verbindung zu einer Datenbank und zum Abfragen von Daten an:

In diesem Artikel werden wir die Möglichkeiten und Vorteile der Integration von ChatGPT in eine ReactJS-Anwendung untersuchen und Schritt-für-Schritt-Anleitungen dazu geben.
