Webpack4系列教程(六) 多頁面解決方案
寫在前面
在這篇部落格中,我將會你介紹多頁面解決方案
基本配置
目錄結構
程式碼
module.exports = {
entry: {
pageA: './src/pageA.js',
pageB: './src/pageB.js'
},
output: {
filename: '[name].bundle.js',
chunkFilename: '[name].chunk.js',
path: path.resolve('dist')
},
mode: 'development',
plugins: [
new CleanPlugin('dist'),
new HtmlPlugin({
template: './src/index.html',
hash: true
})
]
}
打包結果
開啟pageA.bundle.js
和pageB.bundle.js
對比發現,它們都引用了common.js
及jquery.js
公共檔案,且都有一套webpackBootstrap
執行程式碼,這些重複的程式碼應該打包在一個檔案裡,然後pageA.bundle.js
和pageB.bundle.js
引用就好了
splitChunksPlugin && runtimeChunkPlugin
相關配置可參考這篇部落格:webpack4 splitChunksPlugin && runtimeChunkPlugin 配置雜記
optimization: {
splitChunks: {
cacheGroups: {
vendor: {
name: 'vendor',
test: /[\\/]node_modules[\\/]/,
chunks: 'all',
priority: 1
},
common: {
name: 'common',
chunks: 'all',
minSize: 1,
minChunks: 2,
priority: 0
}
}
},
runtimeChunk: {
name: 'manifest'
}
}
打包結果
相關文章
- Webpack4系列教程(七) 單頁面解決方案Web
- webpack4 系列教程(四): 單頁面解決方案–程式碼分割和懶載入Web
- Webpack4 學習筆記六 多頁面配置和devtoolWeb筆記dev
- webpack4 多頁面,多環境配置Web
- webpack4 + react 搭建多頁面應用WebReact
- 漸進式配置webpack4單頁面和多頁面(一)Web
- webpack4多頁面打包腳手架配置Web
- 禁止web頁面縮放解決方案Web
- iframe父子頁面通訊解決方案
- Webpack4系列教程 --- 前言Web
- webpack4 系列教程: 前言Web
- webpack4打包vue前端多頁面專案WebVue前端
- webpack4 系列教程(一): 打包JSWebJS
- webpack4系列教程(十):總結Web
- Vue頁面級快取解決方案feb-alive (下)Vue快取
- JS 網頁列印解決方案JS網頁
- 頁面間通訊與資料共享解決方案簡析
- webpack4系列教程(一):初識webpackWeb
- Jou 的解決方案系列:序言
- .NET桌面程式整合Web網頁開發的多種解決方案Web網頁
- Vuex資料頁面重新整理丟失問題解決方案Vue
- Flutter頁面內需要大量使用TextEditingController時的一種解決方案FlutterGCController
- 你可能需要的多文件頁面互動方案
- webpack4 系列教程(十四):Clean Plugin and Watch ModeWebPlugin
- Webpack4系列教程(一) 基礎入門Web
- Webpack4系列教程(二) HTML相關配置WebHTML
- Webpack4系列教程(三) JS相關配置WebJS
- Webpack4系列教程(四) CSS相關配置WebCSS
- 關於mpvue中同路由不同頁面共享資料的解決方案Vue路由
- webpack4 系列教程(十一):字型檔案處理Web
- Webpack4系列教程(五) 圖片相關配置Web
- webpack4 系列教程(二): 編譯 ES6Web編譯
- Java NIO系列教程(六) SelectorJava
- WinForm嵌入Web網頁的解決方案ORMWeb網頁
- 一個簡單易用的webpack4多頁面腳手架配置加學習Web
- 頁面劫持,頁面劫持,如果被頁面劫持了該怎麼去解決,方法分享
- 多語言與多時區的解決方案
- 小程式webview跳轉頁面後沒有返回按鈕完美解決方案WebView