Webpack是一個模塊打包工具,你能夠使用Webpack管理你的模塊依賴,並編譯輸出模塊們所須要的靜態文件。它可以很好的管理,打包web開發中所用到的HTML,Javascript,CSS以及各類靜態文件(圖片,字體等),讓開發過程更加高效。對於不一樣類型的資源,webpack有對應的模塊加載器。Webpack模塊打包器會分析模塊間的依賴關係,最後,生成了優化切合並後的靜態資源。css
webpack的兩大特點:webpack
1.code splitting(能夠自動完成)web
2.loader 能夠處理各類類型的靜態文件,而且支持串聯操做緩存
webpack是以commonJS的形式來書寫腳本的,但對AMD/CMD的支持也會很全面,方便舊項目進行代碼遷移。異步
webpack具備requireJS的和browserify的功能,但仍有不少本身的新特性。工具
1.對CommonJs,AMD,ES6的語法作了兼容;字體
2.對js,css,圖片等資源文件都支持打包。優化
3.串聯模式加載器以及插件機制,讓其具備更好的靈活性和拓展性,例如提供對CoffeeScript,ES6的支持ui
4.有獨立的配置文件webpack.config.js插件
5.能夠將代碼切割成不一樣的chunk,實現按需加載,下降了初始時間
6.支持SourceUrls和SourceMaps,易於調試
7.具備強大的Plugin接口,大部分是內部插件,使用起來比較靈活。
8.webpack使用異步IO並具備多級緩存。這使得webpack很快在增量編譯上更快