💨
Webpackって何
今回の内容
いつもLinuxの環境構築などでお世話になってるここのサイトから今日はWebpackについて勉強したいと思います( ・ω・ )/
Webpackってなんぞ
Webpackとは
- モジュールバンドラー
- なんですかそれ
- 複数のJavaScriptのモジュール(部品)を集めて一つのJSファイルを作成してくれる!
- 複数のファイルを最小化することで全体の効率が高まり軽量なプログラムにできる
- ファイルが一つになることでブラウザからのリクエスト数を減らせる
- 画像やCSSもバンドルすることが可能
なんかよく分からんけど便利アイテムっぽいぞ(⑅•ᴗ•⑅)
その他のモジュールバンドラー
種類 | 説明 |
---|---|
esbuild | Goで書かれている。速い |
parcel | 立ち上げに必須な設定がゼロ |
使ってみる
ディレクトリの作成、Node.jsの初期化
mkdir sample
cd sample
npm init -y
★npmはNode.jsインストール時に一緒にインストールされます
webpackのインストール
npm install --save-dev webpack (webpack-cli)
webpack-cli
はnpx webpack
のようにコマンドラインで実行する時に使う
webpack.config.jsの設定
webpack.config.js
const path = require('path');
module.exports = {
mode: 'development',
entry: `./src/index.js`,
output: {
filename: "bundle.js",
path: path.join(__dirname, 'dist')
}
};
項目 | 説明 |
---|---|
mode |
development ,production ,none から選べる |
entry | エントリーポイント(バンドルの構築を開始する場所)の設定 |
output | 出力先のパスやファイル名を指定 |
- entryはデフォルトで
src/index.js
(=エントリーファイル)とそこから読み込まれているモジュールをバンドル - outputの
path.join(__dirname, 'dist')
現在のディレクトリにdistディレクトリ
を作成し、その中にmain.js
を作る dirname
は現在のディレクトリのパスを示す特別な変数。
Scriptの設定
package.json
のscript
の箇所に以下を記述。
"scripts": {
"dev": "webpack --mode development --watch",
"build": "webpack --mode production"
},
--watchオプションを追加すると変更時に開発中にコマンドを実行しなくても勝手にバンドルしてくれる
コンパイルの実行
バンドルを実行する
(以降はwatch modeで勝手にやってくれる)
npm run dev(devはpackage.json内scriptsに記述したもの)
以上、webpackの基本についてでした( ⁎ᵕᴗᵕ⁎ )❤︎
実際にターミナル操作をやってみたいな〜という方はここのサイトで実際にやってみるのがいいかと( •̀ω•́ )/
実際に仮想環境でコマンドをじゃんじゃん叩けるのでパソコンが壊れる心配がなくて良き★
コース全体はこんな感じ
Discussion