1. 程式人生 > >webpack多入口多出口的實現方法

webpack多入口多出口的實現方法

webpack是一個優秀的打包平臺, 可以把sass, 圖片, 字型等靜態資源全部打包到js中
作者最近在改造一個傳統的靜態網站, 為了減少http請求, 其中一個策略就是,把單個靜態網頁對應的多個靜態資源(如字型, css, 圖片, js), 打包輸出到一個js檔案中, 然後讓每個html與對應獨立的js相關聯就可以了
我在網上找了webpack配置的相關資料, html與js的對應關係都是, “一對一”, “多對一”, 但很少有"多對多"的實現
但經過一番折騰, 最終還是被我配置出來了,這裡分享一下配置檔案相關的語法

//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 內,按照格式新增即可(對著抄就行)

小結:

對古老的網站進行維護, 短時間內用 react 或 vue 元件化重寫全部頁面不太現實,但用webpack做個打包, 還是可行性的, 配置好webpack多入口多出口,只需對網站進行少量的改動, 就可以愉快的用scss, es6, 等語法寫網站了

最後

為了幫助大家讓學習變得輕鬆、高效,給大家免費分享一大批資料,幫助大家在成為全棧工程師,乃至架構師的路上披荊斬棘。在這裡給大家推薦一個前端全棧學習交流圈:866109386.歡迎大家進群交流討論,學習交流,共同進步。

當真正開始學習的時候難免不知道從哪入手,導致效率低下影響繼續學習的信心。

但最重要的是不知道哪些技術需要重點掌握,學習時頻繁踩坑,最終浪費大量時間,所以有有效資源還是很有必要的。
在這裡插入圖片描述