Webpack 是當(dāng)下最熱門的前端資源模塊化管理和打包工具。它可以將許多松散的模塊按照依賴和規(guī)則打包成符合生產(chǎn)環(huán)境部署的前端資源。還可以將按需加載的模塊進(jìn)行代碼分隔,等到實際需要的時候再異步加載。通過 loader
的轉(zhuǎn)換,任何形式的資源都可以視作模塊,比如 CommonJs 模塊、 AMD 模塊、 ES6 模塊、CSS、圖片、 JSON、Coffeescript、 LESS 等。
Loader
- Webpack 本身只能處理 JavaScript 模塊,如果要處理其他類型的文件,就需要使用 loader 進(jìn)行轉(zhuǎn)換。
- Loader 可以理解為是模塊和資源的轉(zhuǎn)換器,它本身是一個函數(shù),接受源文件作為參數(shù),返回轉(zhuǎn)換的結(jié)果。這樣,我們就可以通過 require 來加載任何類型的模塊或文件,比如 CoffeeScript、 JSX、 LESS 或圖片。
- loader 一般以 xxx-loader 的方式命名
- 常用Loader
css-loader style-loader
插件
- 插件可以完成更多 loader 不能完成的功能。
- 插件的使用一般是在 webpack 的配置信息 plugins 選項中指定。
- 常用插件
autoprefixer,自動補(bǔ)全css3前綴
html-webpack-plugin,自動生成html插件
extract-text-webpack-plugin,提取樣式插件
copy-webpack-plugin,拷貝資源插件