Rumah >hujung hadapan web >tutorial js >Ketahui lebih lanjut tentang webpack alat pembungkusan modul
Apakah pek web? Artikel ini akan memperkenalkan anda kepada pek web alat pembungkusan modul Saya harap ia akan membantu anda!
1. alat pembungkusan modular statik untuk aplikasi JavaScript semasa. (Ayat ini boleh diringkaskan daripada dua perkara iaitu Modul dan
Pembungkusan)
Mari kita bincang tentangModulKonsep
pakej! 2. Pemodulasian bahagian hadapan
Beberapa penyelesaian untuk pemodulatan bahagian hadapan: AMD, CMD, CommonJS, ES6 (pelayar tidak dapat mengenali
mereka, tetapipak web boleh membantu kami memodularkan dan mengendalikan pelbagai
hubungan yang kompleksInti dengusan/tegukan ialah Tugas 1. Anda boleh
mengkonfigurasi untuk diproses oleh tugasan (seperti ES6, ts penukaran, pemampatan imej , tukar scss kepada css)
2. Kemudian biarkan grunt/gulp melaksanakan tugasan ini mengikut turutan dan mengautomasikan keseluruhan proses
Mari kita lihat tugas teguk 1. Tugas berikut adalah untuk menukar semua fail js di bawah src kepada sintaks ES5. 2. Dan akhirnya output ke folder dist.
Bila hendak menggunakan grunt/gulp?
1. Kebergantungan modul projek adalah sangat mudah, dan konsep modularisasi tidak digunakan pun 2. Hanya penggabungan dan pemampatan mudah diperlukan, hanya gunakan grunt/gulp
Apakah perbezaan antara grunt/gulp dan webpack?
1.
renggut/meneguk lebih menekankan pada automasi proses front-end, dan modularisasi bukanlah terasnya
pembangunan pengurusan, dan fail Fungsi pemampatan, penggabungan, prapemprosesan dan lain-lain adalah fungsi yang disertakan
2. Pemasangan webpack
nod) Jadi untuk memasang webpack, anda mesti memasang Node.js dahulu dengan alat pengurusan pakej npmPasang webpack secara global (npm install webpack@. 3.6.0 -g)
Pasang webpck setempat (npm install webpack@3.6.0 --save-dev) – save-dev ialah kebergantungan pembangunan dan tidak perlu digunakan selepas projek dibungkus.Berikut ialah kod dalam fail mathUtils.js dan fail main.js: (Spesifikasi modular CommonJS, CommonJS ialah standard modular, nodejs Ia adalah pelaksanaan CommodJS (modular))
2. Perintah
webpack. /src/main.js ./dist/bundle.js(Bungkus fail utama.js ke dalam fail bundle.js)
Nota: Dengan cara yang sama, anda juga boleh menggunakan Spesifikasi modular ES6
3 Cipta fail webpack.config.js untuk memudahkan arahan pembungkusan
(petakan arahan pembungkusan kepada pembungkusan Masuk dan keluar)
Kod dalam fail ini:
kemasukan: ialah kemasukan berpakej
output: Untuk eksport berpakej
Penerangan: Jika anda ingin menggunakan nod, anda mesti bergantung pada pakej Fail .json
untuk dijalankanSelepas npm install webpack@3.6.0 --save-dev, kebergantungan berikut ditambah:
4. Petakan arahan webpack ke npm run
Selain pemetaanwebpack untuk masuk, keluar, anda juga boleh memetakan webpack Perintah dipetakan kepada npm run dan beberapa operasi (perlu diubah suai dalam teg skrip **"skrip"** dalam package.json). .
1. Pemuat ialah konsep teras dalam pek web
1), pemprosesan fail css
Kerja penyediaan :1. Cipta fail css dalam direktori src, dan buat fail normal.css di dalamnya
2. Susun semula struktur direktori fail dan letakkan fail js yang berselerak dalam 3. Kod dalam normal.css dalam folder js adalah sangat mudah, iaitu menetapkan badan kepada merah 4 Tetapi pada masa ini, kod masuk normal.css Gaya tidak akan berkuat kuasa lagi, kerana ia tidak dirujuk, dan webpack tidak dapat mencarinya, kerana kami hanya mempunyai satu entri, dan webpack akan mencari fail bergantung yang lain bermula dari entri.
5. Pada masa ini kita mesti merujuk
Gunakan pemuat yang sepadan!
Langkah 1: Pasang pemuat yang anda perlu gunakan melalui npm
(npm install --save-dev css-loader) (npm pasang - -save-dev style-loader)
Dalam tapak web rasmi webpack, cari penggunaan pemuat gaya berikut:
Langkah 2: Konfigurasikan di bawah modul kata kunci dalam webpack.config.js
Arahan: Antaranya css-loader hanya bertanggungjawab untuk memuatkan fail css dan tidak bertanggungjawab untuk membenamkan gaya css tertentu ke dalam dokumen
Pada masa ini, kami juga memerlukan style-loader membantu kami mengendalikan
Nota: style-loader perlu diletakkan di hadapan css-loader.
2), kurang pemprosesan fail
Langkah 1: Pasang pemuat yang sepadan (nota: di sini Kurang juga dipasang kerana pek web akan menggunakan kurang untuk menyusun lebih sedikit fail). Perintah: npm install --save-dev less-loader less
Langkah 2: Ubah suai fail konfigurasi yang sepadan (dalam webpack.config .js) untuk memproses fail .less. Seperti berikut:
3), pemprosesan fail imej
Langkah 1: Tambahkan dua imej pada projek (satu kurang daripada 8kb, satu lagi lebih besar daripada 8kb)
Langkah 2: Pertimbangkan dahulu menambah imej Rujukan css dalam gaya, adalah seperti berikut
Langkah 3: Ubah suai yang sepadan fail konfigurasi (dalam webpack .config.js) untuk memproses fail imej. Seperti berikut:
Langkah 4: Ralat ditemui selepas pembungkusan, kerana imej yang lebih besar daripada 8kb akan melalui pemuat fail Memproses, tetapi tiada pemuat fail dalam projek kami. (Anda perlu memasang file-loader, perintah npm install --save-dev file-loader Selepas pemasangan dan pembungkusan, anda akan mendapati terdapat fail imej tambahan dalam folder dist.
Nota:
Saya mendapati bahawa pek web secara automatik menghasilkan yang sangat Panjang nama
1. Ini ialah nilai cincang 32-bit untuk mengelakkan pertindihan nama
2. Walau bagaimanapun, dalam pembangunan sebenar, mungkin terdapat keperluan tertentu untuk nama imej berpakej
Jadi, kita boleh menambah pilihan berikut dalam pilihan:
1 img: folder tempat fail itu akan dibungkus
2. nama: dapatkan nama asal imej dan letakkannya. dalam kedudukan ini
3. hash8: Untuk mengelakkan konflik nama imej, hash masih digunakan, tetapi hanya 8 bit disimpan
4. ext: gunakan sambungan asal imej
seperti berikut:
Anda juga perlu mengkonfigurasi dan mengubah suai laluan yang digunakan oleh imej
1 Secara lalai, webpack akan mengembalikan laluan yang dijana kepada pengguna
2. Walau bagaimanapun, Keseluruhan program dibungkus dalam folder dist, jadi di sini anda perlu menambah satu lagi dist/
ke laluan seperti berikut:
Ringkasnya, selepas pembungkusan , fail imej adalah seperti ini
4), ES6 hingga ES5 babel
Langkah 2: Import vue dalam main.js (import Vue dari 'vue' ) seperti berikut
Langkah 3: Gantung p untuk vue dalam index.html Contohnya, seperti berikut
Langkah 4: Ralat ditemui selepas pembungkusan Kami perlu menentukan bahawa vue yang kami gunakan ialah masa jalan-. versi pengkompil.
Operasi khusus: Anda perlu menambah menyelesaikan pada webpack dan mengambil alias (alias), seperti berikut :
Langkah 1: Gantung p pada contoh vue dalam index.html
Langkah 2: Import komponen APP ke dalam fail utama.js dan daftarkan APP, dalam Contoh Vue Gunakan APP komponen ini (Berkomponen) dalam templat Vue
Langkah 3: Buat fail APP.vue dan tukar halaman vue 🎜>Templat dan kod js , kod css dipisahkan, seperti berikut
Langkah 4: Konfigurasikan pemuat sepadan vue ,
Ubah suai fail konfigurasi webpack.config.js:
1. Kenali pemalam
2. Webpack-Tambah maklumat hak cipta Penggunaan pemalam
3 Pemalam html pembungkusan
<.>4. Pemalam pemampatan js
Perintah: (npm install --save-dev webpack-dev-server@2.9. 1 )devserver juga merupakan
opsyen Pilihan itu sendiri boleh ditetapkan seperti berikut:
atribut
3. inline: page refresh in. masa nyata 4. historyApiFallback: Dalam halaman SPA, mod sejarah yang bergantung pada HTML5 konfigurasi fail webpack.config.js diubah suai seperti berikut:
Perkara yang diperlukan untuk pembangunan
diasingkan daripada yang diperlukan untukmenyusun). Seperti berikut:
1.
2. Prasyarat untuk menggunakan Vue CLI - Nod (nod perlu dipasang)
Walau bagaimanapun, menggunakan Node mesti melibatkannpm,
Apakah NPM?
3. Penggunaan Vue CLI
npm install -g @vue/cliNota: Versi yang dipasang di atas ialah versi Vue CLI3 Jika anda perlu memulakan projek mengikut kaedah Vue CLI2, ia tidak boleh
vue init webpack my-projectUntuk lebih banyak pengetahuan berkaitan nod, sila lawati:
tutorial nodejs!
Atas ialah kandungan terperinci Ketahui lebih lanjut tentang webpack alat pembungkusan modul. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!