webpack是什么
webpack是一個前端構(gòu)建的打包工具(并不是什么庫或框架), 它能把各種資源,例如JS(含JSX)、coffee、css(含less/sass)、圖片等都作為模塊來處理和使用。

1.基礎(chǔ)知識點
1.1 webpack 是一個現(xiàn)代 JavaScript 應(yīng)用程序的模塊打包器(module bundler)。當(dāng) webpack 處理應(yīng)用程序時,它會遞歸地構(gòu)建一個依賴關(guān)系圖(dependency graph),其中包含應(yīng)用程序需要的每個模塊,然后將所有這些模塊打包成一個或多個 bundle。
1.2webpack的四個核心概念:
1.2.1 entry(入口):entry point,入口起點(可以有多個),webpack會從該起點出發(fā),找出哪些文件時入口文件所依賴的,從而構(gòu)建內(nèi)部依賴關(guān)系圖,并處理后輸出到稱之為bundles的文件中
1.2.2 output(輸出):指定經(jīng)entry point處理后的bundles文件的輸出路徑(path)和名字(filename)
1.2.3 loader(加載器):用來處理非JS文件,可以將所有文件轉(zhuǎn)換成webpack可以處理的模塊,然后交給webpack進行打包等處理;webpack loader 本質(zhì)上講是將所有類型的文件轉(zhuǎn)化為應(yīng)用程序的依賴圖可以直接引用的模塊,其有兩個目標(biāo):
1.2.3.1 使用test屬性,識別出對應(yīng)于 loader 的可轉(zhuǎn)換文件
1.2.3.2 使用use屬性將這些文件進行轉(zhuǎn)換,使其被添加到依賴圖中,并且最終會添加到 bundle 中
如果要在 webpack 配置中定義 loader ,要在 module.rules 中定義,而不是 rules
1.2.4 plugins(插件):從打包優(yōu)化和壓縮,一直到重新定義環(huán)境中的變量。插件接口功能極其強大,可以處理各種各樣的任務(wù)
使用一個插件只需要 require() 它,然后把它添加到 plugins 數(shù)組中就行。多數(shù)插件可以通過選項(option)自定義。你也可以在一個配置文件中因為不同目的而多次使用同一個插件,這時需要通過使用 new 操作符來創(chuàng)建它的一個實例。
webpack 提供許多開箱可用的插件!查閱插件列表獲取更多信息,更詳細(xì)的圖文請參閱官方文檔 https://doc.webpack-china.org/concepts/。
總結(jié)
以上所述是小編給大家介紹的Webpack框架核心概念(知識點整理),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對武林網(wǎng)的支持!
新聞熱點
疑難解答