webpack require.ensure と require AMD の違いの詳細な説明
この記事では、webpack require.ensure と require AMD の違いについての詳細な説明を主に紹介します。編集者が非常に優れていると考えたので、参考として共有します。編集者をフォローして見てみましょう。皆さんのお役に立てれば幸いです。
require-amd
説明: AMD 仕様の require 関数と同じで、モジュール配列とコールバック関数が渡されます。
構文: require( 依存関係: String[], [コールバック: function(...)])
パラメータ
依存関係: モジュール依存関係配列
callback: コールバック関数
require- ensure
注: require.ensure は、必要な場合にのみ依存モジュールをダウンロードします。パラメーターで指定されたすべてのモジュールがダウンロードされると (ダウンロードされたモジュールはまだ実行されていません)、
パラメーターで指定されたコールバック関数が実行されます。 。 require.ensure はチャンクを作成し、チャンクの名前を指定できます。チャンク名がすでに存在する場合、依存するモジュールは、Webpack のビルド時に個別に生成されます。ファイル。
構文: require.ensure(dependency: String[], callback: function([require]), [chunkName: String])
dependency: 依存モジュールの配列
callback: コールバック関数、関数が呼び出されるときに、require パラメーターが渡されます
chunkName: モジュール名、構築中にファイルを生成するときに名前を付けるために使用されます
注: requi.ensure モジュールはダウンロードされるだけで、実行されません。このモジュールのみが実行されます。コールバック関数が require(モジュール名) を使用するまで実行されません。
example
require-amd
ソースコード
webpack.config.amd.js
var path = require("path"); module.exports = { entry: "./example.amd.js", output: { path: path.join(__dirname, "amd"), filename: "[name].bundle.js", chunkFilename: "[id].chunk.js" } };
example.amd.js
module1.js
require(["./module1"], function(module1) { console.log("aaa"); var module2 = require("./module2"); console.log("bbb"); });
module2.js
console.log("module1"); module.exports = 1;
ビルド結果
コマンドラインでwebpackを実行 --config webpack.config.amd.js
- main.bundle.js
- example.amd.js
- 1. chunk.js
- module1.js
- module2.js
実行結果
ブラウザでamd/index.htmlを実行し、コンソール出力:
console.log("module2"); module.exports = 2;
require-ensure
sourceコード
webpack.config.ensure.js
module1 aaa module2 bbb
example.ensure.js
var path = require("path"); module.exports = { entry: "./example.ensure.js", output: { path: path.join(__dirname, "ensure"), filename: "[name].bundle.js", chunkFilename: "[name].chunk.js" } };
module1.js
上と同じ
module2.js
上と同じ
結果を構築する
コマンドラインで webpack --config webpack.config.ensure.js を実行します
- main.bundle.js
- example.amd.js
- 1.chunk.js
- module1.js
- module2.js
実行結果
ブラウザでensure/index.htmlを実行すると、コンソール出力:
aaa
module2
bbb
module1
require-ensure-chunk
ソースコード
webpack。 config.ensure .chunk.js
require.ensure(["./module1"], function(require) { console.log("aaa"); var module2 = require("./module2"); console.log("bbb"); require("./module1"); }, 'test');
example.ensur.chunk.js
var path = require("path"); module.exports = { entry: "./example.ensur.chunk.js", output: { path: path.join(__dirname, "ensure-chunk"), filename: "[name].bundle.js", chunkFilename: "[name].chunk.js" } };
module1.js
上と同じ
module2.js
上と同じ
コマンドを実行行ウェブパック -- config webpack.config .ensure.js - main.bundle.js
- example.amd.js- 1.chunk.js
- module1.js
- module2.js
ブラウザで ensure/index を実行します。 html、コンソール出力:
aaamodule1bbb
cccc1Module2
ddd
関連する推奨事項:
Webpack、Babel、Reactに関する知識
以上がwebpack require.ensure と require AMD の違いの詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









vue3+vite:src は、イメージとエラー レポートと解決策を動的にインポートするために require を使用します。vue3+vite は複数のイメージを動的にインポートします。vue3。TypeScript 開発を使用している場合、イメージを導入するために require のエラー メッセージが表示されます。requireisnotdefined は使用できません。 vue2 のような imgUrl:require(' .../assets/test.png') は、typescript が require をサポートしていないため、インポートされます。そのため、import が使用されます。解決方法は次のとおりです: awaitimport を使用します

Vue は、インタラクティブで効率的な Web アプリケーションを迅速に構築するのに役立つ優れた JavaScript フレームワークです。 Vue3 は、多くの新機能が導入された Vue の最新バージョンです。 Webpack は現在最も人気のある JavaScript モジュール パッケージャーおよびビルド ツールの 1 つで、プロジェクト内のさまざまなリソースの管理に役立ちます。この記事では、Webpack を使用して Vue3 アプリケーションをパッケージ化してビルドする方法を紹介します。 1.Webpackをインストールする

相違点: 1. Webpack サーバーの起動速度は Vite より遅いですが、Vite は起動時にパッケージ化する必要がなく、モジュールの依存関係を解析してコンパイルする必要がないため、起動速度が非常に速くなります。 2. Vite ホット アップデートは webpack よりも高速です。Vite の HRM の観点から、特定のモジュールのコンテンツが変更された場合、ブラウザーにモジュールを再リクエストさせるだけです。 3. Vite は esbuild を使用して依存関係を事前構築しますが、webpack はノードに基づいています。 4. Vite のエコロジーは webpack ほど良くなく、ローダーとプラグインが十分に豊富ではありません。

Web 開発テクノロジーの継続的な発展に伴い、フロントエンドとバックエンドの分離とモジュール開発が広く普及する傾向になりました。 PHP は一般的に使用されるバックエンド言語です。モジュラー開発を行う場合、モジュールの管理とパッケージ化にいくつかのツールを使用する必要があります。Webpack は非常に使いやすいモジュラー パッケージング ツールです。この記事では、モジュール開発に PHP と webpack を使用する方法を紹介します。 1. モジュラー開発とは何ですか? モジュラー開発とは、プログラムを、それぞれが独自の機能を持つ独立したモジュールに分解することを指します。

require の使用法: 1. モジュールの導入: 多くのプログラミング言語では、require は外部モジュールまたはライブラリを導入し、それらが提供する関数をプログラム内で使用できるようにするために使用されます。たとえば、Ruby では、require を使用してサードパーティのライブラリまたはモジュールをロードできます。 2. クラスまたはメソッドのインポート: 一部のプログラミング言語では、require を使用して特定のクラスまたはメソッドをインポートし、現在のファイルで使用できるようにします。 ; 3. 特定のタスクを実行する: 一部のプログラミング言語またはフレームワークでは、特定のタスクまたは関数を実行するために require が使用されます。

設定方法: 1. import メソッドを使用して ES6 コードをパッケージ化された js コード ファイルに配置します; 2. npm ツールを使用して babel-loader ツールをインストールします。構文は「npm install -D babel-loader @babel/core」です。 @babel/preset-env"; 3. babel ツールの構成ファイル「.babelrc」を作成し、トランスコーディング ルールを設定します。 4. webpack.config.js ファイルでパッケージ化ルールを構成します。

最新の Web アプリケーションの複雑さが増すにつれて、優れたフロントエンド エンジニアリングとプラグイン システムを構築することがますます重要になっています。 Spring Boot と Webpack の人気により、これらはフロントエンド プロジェクトとプラグイン システムを構築するための完璧な組み合わせになりました。 SpringBoot は、最小限の構成要件で Java アプリケーションを作成する Java フレームワークです。自動構成などの多くの便利な機能を提供するため、開発者は Web アプリケーションをより迅速かつ簡単に構築および展開できます。 W

vue では、webpack は js、css、ピクチャ、json、その他のファイルをブラウザで使用できる適切な形式にパッケージ化できます。webpack では、js、css、ピクチャ、json、その他のファイル タイプをモジュールとして使用できます。 Webpack のさまざまなモジュール リソースは、パッケージ化して 1 つ以上のパッケージにマージでき、パッケージ化プロセス中に、画像の圧縮、scss から css への変換、ES6 構文から ES5 への変換などのリソースを処理できます。 HTMLで認識されるファイルタイプ。
