Webpackとの理解
15197 ワード
webpack
Webpackの基本概念 webpackの役割 vue-cliベース層を実現する原理 は、1つのサーバ として実行することができる.は、リアルタイム更新 を行うことができる.コード修正後、保存すると、ページは自動的に 更新されます.はcssファイルを解析することができる.vueファイル
準備作業タスク:webpackを使用してvue-vliと同様のプロジェクト構造 を構築するコンセプトドキュメント転送:リソースをパッケージ化 表 スタイル スクリプト ピクチャ パッケージングプロセス:モジュール化されたプロジェクトで、1つの
Webpack使用 1.プロジェクトの初期化(
2.Webpack のインストール 3.構成 4.パッケージ 5.インポートパスの変更 index.htmlにインポートするjsはdistディレクトリのjs に置き換えられる.
注意点:サードパーティ製パッケージのダウンロードに失敗しました:ダウンロードしたツールnpmをcnpm に変更します.ダウンロードダイレクトエラー:フォルダの名前を と名付けないでください.
npm-runの使用
プロファイル
手順: 1.0プロジェクトのルートディレクトリにファイル名: を作成 2.0プロファイルにコード を追加 3.0構成 4.0削除 5.0再パッケージ コンフィギュレーション・アイテム
構成アイテム-エントリ
loader
loader-作用 webpackはデフォルトでjsファイルのみをパッケージ化でき、他のファイル(スタイル、フォント、画像)をパッケージ化できません.他のファイルをパッケージ化する場合は、webpackのloaderを使用してパッケージ化できます.
特徴:すべてのloaderはサードパーティ製パッケージであり、webpackが他のリソース をパッケージ化するのに役立ちます.異なるloaderパッケージのファイルは異なる です.
loader - style-loader&css-loader
トランスファゲート
手順: 1.0パッケージcssをインストールするloader 2.0構成Loader(webpack.sonfig.js) 3.0再パッケージ loader - less-loader
プロジェクトを書くときはless構文を使ってスタイルを書くのが一般的です.lessサードパーティ製パッケージを使用するパッケージが必要な場合:less-loader
トランスファゲート
lessの使用 lessを追加するスタイル このless を
パッケージlessステップ: 1.0サードパーティ製パッケージ を取り付ける. 2.0構成loader(webpack.config.jsで完了) 3.0再パッケージ loader - sass-loader
sassファイルをパッケージ化するための
sassファイルの使用:はsassファイルを作成します(注意:すべてのsassファイルは他のファイルと衝突することを防止するために、接尾辞名は sassのコード を完了 を使用する.
sassをパッケージングするには: 1.0サードパーティ製パッケージ をダウンロード 2.0サードパーティ製パッケージ を構成する. 3.0再パッケージ loader - file-loader
パッケージ画像:使用画像 htmlにコンテナ を追加コンテナにスタイルを設定する:背景画像 を設定する
パッケージ画像: 1.0サードパーティ製パッケージ をダウンロード 2.0サードパーティ製パッケージ を構成する. 3.0再パッケージ 注意点: 1.0は、distディレクトリの下にある に画像をパッケージします. 2.0静的ファイル: にインポートされた を行う.
パッケージフォント:フォントを使用(bootstrapのフォントファイルを使用) bootstrap(バージョン番号:3.3.3.7) をダウンロード bootstrapをインポートするスタイル フォントアイコン を使用
パッケージフォント: 1.0サードパーティ製パッケージ をダウンロード 2.0サードパーティ製パッケージ を構成する. 3.0再パッケージ
loader - babel-loader
es 6構文をes 5構文にパッケージ化
パッケージes 6はes 5 1.0サードパーティ製パッケージ をダウンロード 2.0サードパーティ製パッケージ を構成する. 3.0再パッケージ 注意点:最新のwebpackはieブラウザを放棄した(es 6をes 5に転送することはないので、上記のコードが機能するには、webpackのバージョンを4.xに降格すべきである) .
プラグイン
プラグイン-HtmlWebpackPlugin
内容を変更する後、distディレクトリの下の内容を再パッケージした後、indexを必要とする.htmlを
役割:distディレクトリでhtmlファイルを自動的に生成できます.
手順: 1.0ダウンロードプラグイン 2.0構成プラグイン(webpack.config.jsで完了) 3.0再パッケージ: 自動生成htmlファイルには、以下の特徴があります. は、テンプレートの内容を自動的に1部 コピーします.ファイルの末尾にエントリファイルの参照 が自動的に追加されます.
プラグイン-clean-webpack-plugin
役割:distディレクトリを消去する
手順: 1.0ダウンロードプラグイン 2.0構成プラグイン 3.0再パッケージ プラグイン-webpack-dev-server
役割:サーバをオープンし、リアルタイムで更新できる機能
手順: 1.0ダウンロードプラグイン 2.0構成プラグイン(webpack.config.js) 3.0構成命令:(package.json) 4.0オープンサーバ: 注意点:サーバをオープンした後、コードを修正した後、自分で再パッケージする必要がなく、手動でページをリフレッシュする(サーバはリアルタイムで更新できる) . webpack-dev-serverプラグインの使用時にデフォルトで使用するデフォルトファイルの名前は、 です.
Webpackの基本概念
js
ファイルを入口として、それぞれ他のファイル(.js、ピクチャ、スタイル...)をインポートしてモジュール化されたプロジェクトを形成します.Webpackはこのモジュール化されたモジュールをパッケージ化し、js&スタイル&ピクチャをパッケージ化し、パッケージ化した後、ブラウザ上で直接実行することができます. Webpack使用
package.json
ファイルの生成)npm init -y
npm install --save-dev [email protected] // webpack
npm install --save-dev [email protected] // webpack cli
package.json
{
"scripts": {
"start": "webpack ./ "
}
}
npm run start
注意点:
webpack
npm-runの使用
npm run start
:現在実行中のディレクトリの下にpackage.json
のscriptのstartコマンドを探して実行します.プロファイル
手順:
webpack.config.js
const path = require('path');
module.exports = {
entry: './src/main.js',
};
package.json
ファイル{
"scripts": {
"start": "webpack --config webpack.config.js"
}
}
dist
ディレクトリ構成アイテム-エントリ
loader
loader-作用
特徴:
loader - style-loader&css-loader
トランスファゲート
手順:
npm install --save-dev style-loader css-loader
module.exports = {
entry: '',
output: {
},
module: {
rules: [
{
test: /\.css$/,
use: [
'style-loader', //
'css-loader' // dist
]
}
]
}
}
npm run start
プロジェクトを書くときはless構文を使ってスタイルを書くのが一般的です.lessサードパーティ製パッケージを使用するパッケージが必要な場合:less-loader
トランスファゲート
lessの使用
style
にlessを作成する.less src/index.js
に導入するパッケージlessステップ:
npm install --save-dev less-loader less
module.export = {
module: {
rules: [{
test: /\.less$/,
use: [
'style-loader',
'css-loader',
'less-loader'
]
}]
}
}
sassファイルをパッケージ化するための
sassファイルの使用:
.scss
と統一的に書きます)index.js
でsassをパッケージングするには:
パッケージ画像:
public/index.html
をdist
ディレクトリにコピーjs
ファイルのパスも、対応する修正パッケージフォント:
loader - babel-loader
es 6構文をes 5構文にパッケージ化
パッケージes 6はes 5
npm install [email protected] @babel/core @babel/preset-env --save-dev
module: {
rules: [
{
test: /\.js$/, // js es6 es5
exclude: /node_modules/, // node_modules
use: {
loader: 'babel-loader', // babel-loader
options: {
presets: ['@babel/preset-env'] //
}
}
}
]
}
プラグイン
プラグイン-HtmlWebpackPlugin
内容を変更する後、distディレクトリの下の内容を再パッケージした後、indexを必要とする.htmlを
pulibc
からdistディレクトリにコピーするのは面倒です.役割:distディレクトリでhtmlファイルを自動的に生成できます.
手順:
npm install --save-dev html-webpack-plugin
//
const HtmlWebpackPlugin = require('html-webpack-plugin')
//
module.exports = {
plugins: [
new HtmlWebpackPlugin({
filename: '', //
template: '' //
})
]
}
npm run start
注意点:<script src="main.js"></script>
プラグイン-clean-webpack-plugin
役割:distディレクトリを消去する
手順:
npm install clean-webpack-plugin --save-dev
//
const {
CleanWebpackPlugin } = require('clean-webpack-plugin');
//
module.exports = {
plugins: [
new CleanWebpackPlugin()
]
}
役割:サーバをオープンし、リアルタイムで更新できる機能
手順:
npm install --save-dev webpack-dev-server
module.exports = {
devServer: {
contentBase: './dist'
},
}
{
"scripts": {
"start": "webpack --config webpack.config.js",
"serve": "webpack-dev-server --open"
}
}
npm run serve
webpack.config.js