Webpack:Compilation Object

2023-05-10 15:02 更新

Compilation 對象有很多可用的方法和鉤子。在此頁面,我們將會列舉出這些可用的方法和屬性。

compilation 對象方法

getStats

function

返回當前編譯的狀態(tài)對象。

addModule

function (module, cacheGroup)

向當前編譯添加一個模塊。

參數(shù):

  • module - 要添加的模塊
  • cacheGroup - 模塊的 cacheGroup

getModule

function (module)

通過編譯的標識符獲取其模塊。

參數(shù):

  • module - 要獲取的模塊。標識符是通過編譯使用 module.identifier() 方法從模塊中提取的。

findModule

function (module)

嘗試通過其標識符搜索模塊。

參數(shù):

  • module - 要搜索的模塊。標識符是通過編譯使用 module.identifier() 方法從模塊中提取的。

buildModule

function (module, optional, origin, dependencies)

構建給定的模塊。

參數(shù):

  • module - 要構建的模塊。
  • optional - 可選標志。
  • origin - 請求此模塊構建的原始模塊。
  • dependencies - 要構建模塊的可選依賴。

processModuleDependencies

function (module, callback)

處理給定模塊依賴。

參數(shù):

  • module - 要被處理依賴的模塊。
  • callback - 模塊依賴處理完成時回調(diào)的函數(shù)。

addEntry

function (context, entry, name, callback)

為編譯添加入口。

參數(shù):

  • context - 入口的上下文路徑。
  • entry - 入口依賴。
  • name - 入口名稱。
  • callback - 添加入口完成之后回調(diào)的函數(shù)。

rebuildModule

function (module, thisCallback)

觸發(fā)模塊的重建。

參數(shù):

  • module - 要被重建的模塊。
  • thisCallback - 模塊重建完成之后調(diào)用的函數(shù)。

finish

function (callback)

完成編譯并調(diào)用給定的回調(diào)。

參數(shù):

  • callback - 編譯完成之后調(diào)用的函數(shù)。

seal

function (callback)

封閉編譯。

參數(shù):

  • callback - 封閉編譯時回調(diào)的函數(shù)。

unseal

function

解除封閉編譯。

參數(shù):

  • callback - 解除封閉編譯時回調(diào)的函數(shù)。

reportDependencyErrorsAndWarnings

function (module, blocks)

將給定模塊的錯誤和警告添加到編譯的錯誤和警告中。

參數(shù):

  • module - 要被報告錯誤與警告的模塊。
  • blocks - 一組要報告的依賴塊。

addChunkInGroup

function (groupOptions, module, loc, request)

將模塊添加到現(xiàn)有 chunk 組或創(chuàng)建一個新的組。返回一個 chunkGroup。

參數(shù):

  • groupOptions - chunk 組的選項。
  • module - 引用 chunk 組的模塊。
  • loc - 引用 chunk 組的位置(模塊內(nèi)部)。
  • request - 引用 chunk 組的請求。

addChunk

function (name)

向 compilation.chunks 創(chuàng)建或添加一個新的 chunk。返回這個 chunk.

參數(shù):

  • name - chunk 的名稱。

assignDepth

function (module)

為給定的模塊及其依賴塊遞歸分配 depth 。

參數(shù):

  • module - 要被分配 depth 的模塊。

getDependencyReference

function (module, dependency)

返回給定模塊對依賴的引用。

參數(shù):

  • module - 有問題的模塊。
  • dependency - 要引用的依賴。

processDependenciesBlocksForChunkGroups

function (inputChunkGroups)

通過 Module 圖創(chuàng)建 Chunk 圖。該過程分為兩個階段完成。階段一:遍歷模塊圖,在 chunkDependencies 中創(chuàng)建一個基礎 chunk 圖。階段二:通過基本 chunk 圖遍歷所有可能的方法并且跟蹤可用模塊。遍歷過程中 processDependenciesBlocksForChunkGroups 將 chunk 相互連接,并將 Blocks 與 Chunks 連接. 當一個 chunk 的所有模塊都已經(jīng)可用且未連接不需要的 chunk 時,它將停止遍歷。

參數(shù):

  • inputChunkGroups - 被處理的 chunk 組。

removeReasonsOfDependencyBlock

function (module, block)

移除模塊與依賴塊之間的關系。

參數(shù):

  • module - 要移除的模塊關系。
  • block - 依賴塊。

patchChunksAfterReasonRemoval

function (module, chunk)

刪除依賴性原因后,修補模塊和 chunk 的關系。被 removeReasonsOfDependencyBlock 自動調(diào)用。

參數(shù):

  • module - 要修復關系的模塊。
  • chunk - 要修復關系的 chunk。

removeChunkFromDependencies

function (block, chunk)

在除去依賴性原因后,從依賴塊模塊和 chunk 中移除給定的 chunk。會被 removeReasonsOfDependencyBlock 自動調(diào)用。

參數(shù):

  • block - Chunk 的塊連接。
  • chunk - 從依賴中刪除的塊。

sortItemsWithChunkIds

function

summarizeDependencies

function

createHash

function

createModuleAssets

function

createChunkAssets

function

getPath

function (filename, data)

返回插值路徑。

參數(shù):

  • filename - 用于通過哈希獲取資源路徑。
  • data - 數(shù)據(jù)對象。

getPathWithInfo

function (filename, data)

返回插值路徑和資源信息。

參數(shù):

  • filename - 用于通過哈希獲取資源路徑。
  • data - 數(shù)據(jù)對象。

createChildCompiler

function (name, outputOptions, plugins)

允許在 webpack 中運行另一個 webpack 實例。但是,子編譯器會應用不同的設置和配置。他會從父編譯器(或者頂級編譯器)中復制所有的鉤子(hook)和插件(plugin),并且創(chuàng)建一個子 Compiler 實例。 返回值為創(chuàng)建好的 Compiler 實例。

參數(shù):

  • name - 子 Compiler 的名稱。
  • outputOptions - 輸出選項。
  • plugins - 將被提供的 webpack 插件。

checkConstraints

function

emitAsset

function (file, source, assetInfo = {})

參數(shù):

  • file - 資源名稱。
  • source - 資源來源。
  • assetInfo - 附加資源信息。

updateAsset

function (file, newSourceOrFunction, assetInfoUpdateOrFunction)

參數(shù):

  • file - 資源名稱。
  • newSourceOrFunction - 新資源來源或將舊資源轉換為新資源的函數(shù)。
  • assetInfoUpdateOrFunction - 新資源信息或將舊資源轉換為新資源的函數(shù)。

deleteAsset

function (file)

參數(shù):

  • file —— 資源的文件名

getAssets

function

返回當前編譯下所有資源的數(shù)組。

getAsset

function (name)

參數(shù):

  • name - 要返回的資源名稱。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號