webpack 4.0更新摘要

jacintoface發表於2018-02-26

webpack4.0新特新總覽

  1. 環境

    不再支援nodejs4及以下版本,原始碼已經更新到更高的es版本

  2. 用法
  • 現在你必須在(mode 或 --mode)選擇其中之一,分別代表了生產環境和開發環境
    • 生產環境允許各種優化手段去生成更優的bundle
    • 開發環境允許註釋以及提示並且允許使用eval devtool
    • 生產環境不支援檔案監視, 開發環境做了更快構建的優化
    • 生產環境允許使用scope hoisting
    • process.env.NODE_ENV 會被設定成開發環境或者生產環境(僅在build所生成的程式碼中)
    • node模式將會禁止所有東西
  1. 語法
    • import()總是會返回一個名稱空間物件,commonJS模組被包裹在預設的匯出中
    • 如果你用commonJS語法使用import(), 這個可能會中斷你的程式碼
  2. 配置
    • 你不再需要下面這些外掛
      • NoEmitOnErrorsPlugin->optimization.noEmitOnErrors 預設會在生產環境中被匯入
    • ModuleConcatenationPlugin->optimization.concatenateModules 預設在生產環境中匯入
    • NamedModulesPlugin -> optimization.namedModules 預設在開發環境中匯入
    • CommonsChunkPlugin被移除,變為optimization.splitChunks, optimization.runtimeChunk
  3. JSON
    • webpack現在自帶處理JSON外掛
      • 你在通過loader將JSON轉換給js的時候,可能需要增加type: "javascript/auto"
      • 不帶loader使用JSON應該仍然可以工作
    • 允許通過js語法匯入json
  4. 優化
    • 更新uglifyjs-webpack-plugin到v1

以上摘抄自webpack官方 release

相關文章