WebPack
是一個模塊打包工具,你可以使用 WebPack
管理你的模塊依賴埠戳,并編繹輸出模塊們所需的靜態(tài)文件趟畏。它能夠很好地管理大磺、打包Web開發(fā)中所用到的 HTML抡句、JavaScript、CSS
以及各種靜態(tài)文件(圖片杠愧、字體等)待榔,讓開發(fā)過程更加高效。對于不同類型的資源流济, webpack
有對應(yīng)的模塊加載器究抓。 webpack
模塊打包器會分析模塊間的依賴關(guān)系,最后 生成了優(yōu)化且合并后的靜態(tài)資源袭灯。
webpack
的兩大特色:
1.code splitting(可以自動完成)2.loader 可以處理各種類型的靜態(tài)文件刺下,并且支持串聯(lián)操作
webpack
是以 commonJS
的形式來書寫腳本滴,但對 AMD/CMD
的支持也很全面稽荧,方便舊項目進行代碼遷移橘茉。
webpack
具有 requireJs
和 browserify
的功能,但仍有很多自己的新特性:
- 對 CommonJS 姨丈、 AMD 畅卓、ES6的語法做了兼容2. 對js、css蟋恬、圖片等資源文件都支持打包3. 串聯(lián)式模塊加載器以及插件機制翁潘,讓其具有更好的靈活性和擴展性,例如提供對CoffeeScript歼争、ES6的支持4. 有獨立的配置文件webpack.config.js5. 可以將代碼切割成不同的chunk拜马,實現(xiàn)按需加載,降低了初始化時間6. 支持 SourceUrls 和 SourceMaps沐绒,易于調(diào)試7. 具有強大的Plugin接口俩莽,大多是內(nèi)部插件,使用起來比較靈活8.webpack 使用異步 IO 并具有多級緩存乔遮。這使得 webpack 很快且在增量編譯上更加快