webpack是一個優(yōu)秀的打包平臺, 可以把sass, 圖片, 字體等靜態(tài)資源全部打包到j(luò)s中
作者最近在改造一個傳統(tǒng)的靜態(tài)網(wǎng)站, 為了減少http請求, 其中一個策略就是,把單個靜態(tài)網(wǎng)頁對應(yīng)的多個靜態(tài)資源(如字體, css, 圖片, js), 打包輸出到一個js文件中, 然后讓每個html與對應(yīng)獨立的js相關(guān)聯(lián)就可以了
我在網(wǎng)上找了webpack配置的相關(guān)資料, html與js的對應(yīng)關(guān)系都是, "一對一", "多對一", 但很少有"多對多"的實現(xiàn)
但經(jīng)過一番折騰, 最終還是被我配置出來了,這里分享一下配置文件相關(guān)的語法
//entry入口文件支持json的形式 entry: { "static/pc/js/index": "./webStatic/pc/js/index.js", "static/pc/js/article-details": "./webStatic/pc/js/article-details.js", "static/mobile/js/index": "./webStatic/mobile/js/index.js", "static/mobile/js/article-details": "./webStatic/mobile/js/article-details.js" }, output: { path: path.resolve(__dirname, ''), //filename前面我們可以使用一個變量[name],這個就表示獲取entry里面的key作為文件名加在前面 filename: '[name].js' }配置說明
根目錄下 webStatic 為源碼放置的位置, 根目錄下 static 為js輸出的的位置
配置文件共進行了四個映射: webStatic/pc/js/index.js 輸出到 static/pc/js/index.js , ./webStatic/pc/js/article-details.js 輸出到 static/pc/js/article-details.js , ./webStatic/mobile/js/index.js 輸出到 static/mobile/js/index.js , ./webStatic/mobile/js/article-details.js 輸出到 static/mobile/js/article-details.js
以后添加其它映射, 只需在 entry 內(nèi),按照格式添加即可(對著抄就行)
小結(jié):
對古老的網(wǎng)站進行維護, 短時間內(nèi)用 react 或 vue 組件化重寫全部頁面不太現(xiàn)實,但用webpack做個打包, 還是可行性的, 配置好webpack多入口多出口,只需對網(wǎng)站進行少量的改動, 就可以愉快的用scss, es6, 等語法寫網(wǎng)站了
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持錯新站長站。
新聞熱點
疑難解答
圖片精選