使用Webpack打包的流程分析
簡(jiǎn)單的說了一下webpack是干嘛的,和webpack如何安裝,如何進(jìn)行打包,步驟很詳細(xì),感興趣的同學(xué)可以試著操作一下。
1、webpacks是什么?
Webpack 是一個(gè)前端資源加載/打包工具。它將根據(jù)模塊的依賴關(guān)系進(jìn)行靜態(tài)分析,然后將這些模塊按照指定的規(guī)則生成對(duì)應(yīng)的靜態(tài)資源。
從圖中我們可以看出,Webpack 可以將多種靜態(tài)資源 js、css、less 轉(zhuǎn)換成一個(gè)靜態(tài)文件,減少了頁面的請(qǐng)求。

2、Webpack安裝
安裝webpack之前需要先安裝好npm,不會(huì)的小伙伴可以這篇文章:node.js基本使用,因?yàn)閚ode.js中自帶npm,所以安裝了node.js就可以了
額外補(bǔ)充一下npm
NPM全稱Node Package Manager,是Node.js包管理工具,是全球最大的模塊生態(tài)系統(tǒng),里面所有的模塊都是開源免費(fèi)的;也是Node.js的包管理工具,相當(dāng)于后端的Maven 。
安裝webpack
npm install -g webpack webpack-cli #全局安裝
安裝后可以查看版本號(hào):webpack -v
3、初始化項(xiàng)目
在使用webpack打包之前,我們首先要先創(chuàng)建一個(gè)項(xiàng)目
1、創(chuàng)建一個(gè)webpack文件夾,在該文件夾下打開終端,
執(zhí)行命令:npm init-y
2、在webpack文件夾中創(chuàng)建一個(gè)src文件夾
3、在src下創(chuàng)建:common.js文件
exports.info = function (str) {
document.write(str);
}4、在src下創(chuàng)建:src下創(chuàng)建utils.js文件
exports.add = function (a, b) {
return a + b;
}5、在src下創(chuàng)建:src下創(chuàng)建main.js文件
//引入外部js
const common = require('./common.js');
const utils = require('./utils.js');
//調(diào)用方法
common.info('Hello world!' + utils.add(100, 200));4、使用webpack進(jìn)行JS打包
1、在webpack目錄下創(chuàng)建配置文件webpack.config.js,內(nèi)容如下
const path = require("path"); //Node.js內(nèi)置模塊
module.exports = {
entry: './src/main.js', //配置入口文件
output: {
path: path.resolve(__dirname, './dist'), //輸出路徑,__dirname:當(dāng)前文件所在路徑
filename: 'bundle.js' //輸出文件
}
}以上配置的意思是:讀取當(dāng)前項(xiàng)目目錄下src文件夾中的main.js(入口文件)內(nèi)容,分析資源依賴,把相關(guān)的js文件打包,打包后的文件放入當(dāng)前目錄的dist文件夾下,打包后的js文件名為bundle.js
2、在webpack目錄下創(chuàng)建dist目錄準(zhǔn)備
3、在webpack目錄下打開終端執(zhí)行編譯命令(執(zhí)行兩個(gè)命令任意一個(gè)即可)
webpack #有黃色警告 webpack --mode=development #沒有警告 #執(zhí)行后查看bundle.js 里面包含了上面兩個(gè)js文件的內(nèi)容并驚醒了代碼壓縮
4、在webpack目錄下創(chuàng)建index.html,內(nèi)容如下
<body>
//引入bundle.js
<script src="dist/bundle.js"></script>
</body>5、在瀏覽器打開該網(wǎng)頁,就能看到輸出內(nèi)容啦!
5、使用webpack進(jìn)行CSS打包
1、安裝style-loader和 css-loader
Webpack 本身只能處理 JavaScript 模塊,如果要處理其他類型的文件,就需要使用 loader 進(jìn)行轉(zhuǎn)換。
Loader 可以理解為是模塊和資源的轉(zhuǎn)換器。
首先我們需要安裝相關(guān)Loader插件,css-loader 是將 css 裝載到 javascript;style-loader 是讓 javascript 認(rèn)識(shí)css
npm install --save-dev style-loader css-loader
2、修改webpack.config.js,內(nèi)容如下
const path = require("path"); //Node.js內(nèi)置模塊
module.exports = {
entry: './src/main.js', //配置入口文件
output: {
path: path.resolve(__dirname, './dist'), //輸出路徑,__dirname:當(dāng)前文件所在路徑
filename: 'bundle.js' //輸出文件
},
module: {
rules: [
{
test: /\.css$/, //打包規(guī)則應(yīng)用到以css結(jié)尾的文件上
use: ['style-loader', 'css-loader']
}
]
}
}
3、在src文件夾下創(chuàng)建style.css,內(nèi)容隨意,這里就給個(gè)網(wǎng)頁背景
body{
background:green;
}4、修改main.js
在第一行引入style.css
require('./style.css');5、瀏覽器中查看index.html
因?yàn)橐肓薱ss文件,需要先刪除dist文件夾中的bundle.js,再重新打包該文件夾,然后再打開index.html
再打開網(wǎng)頁,就能看到j(luò)s中輸出的文字和設(shè)置的網(wǎng)頁背景了

總結(jié)
看著比較多,其實(shí)都很簡(jiǎn)單的,并且都是一步一步來記憶的,對(duì)于新手來說是非常友好的。
到此這篇關(guān)于使用Webpack打包的操作方法的文章就介紹到這了,更多相關(guān)使用Webpack打包內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
原生JS實(shí)現(xiàn)圖片輪播 JS實(shí)現(xiàn)小廣告插件
這篇文章主要為大家詳細(xì)介紹了原生JS實(shí)現(xiàn)圖片輪播、小廣告插件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09
textarea 控制輸入字符字節(jié)數(shù)(示例代碼)
本篇文章主要是對(duì)textarea 控制輸入字符字節(jié)數(shù)的示例代碼進(jìn)行了介紹,需要的朋友可以過來參考下,希望對(duì)大家有所幫助2013-12-12
JS實(shí)現(xiàn)獲取來自百度,Google,soso,sogou關(guān)鍵詞的方法
這篇文章主要介紹了JS實(shí)現(xiàn)獲取來自百度,Google,soso,sogou關(guān)鍵詞的方法,結(jié)合實(shí)例形式分析了js獲取來路頁面的方法與相關(guān)搜索引擎關(guān)鍵詞的處理技巧,需要的朋友可以參考下2016-12-12
JavaScript實(shí)現(xiàn)彈出式可拖動(dòng)登錄框
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)彈出式可拖動(dòng)登錄框,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01
js console.log打印對(duì)像與數(shù)組用法詳解
這篇文章主要介紹了js console.log打印對(duì)像與數(shù)組用法,結(jié)合實(shí)例形式較為詳細(xì)的分析了js使用console.log實(shí)現(xiàn)打印對(duì)象與數(shù)組的具體實(shí)現(xiàn)步驟與相關(guān)技巧,需要的朋友可以參考下2016-01-01
24個(gè)ES6方法解決JS實(shí)際開發(fā)問題(小結(jié))
這篇文章主要介紹了24個(gè)ES6方法解決JS實(shí)際開發(fā)問題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05

