webapck中使用loader的方法有三種
使用loader之前必須運行安裝 : npm install --save-dev xxx-loader
(1)通過CLI : 命令行中運行 webpack --module-bind jade --module-bind 'css=style!css'
//jade,style,css后面可省略-loader,他們分別對.jade使用jade-loader,對.css使用style-loader和css-loader
(2)通過require : require('style-loader!css-loader?module!./style/main.css')
//對main.css使用css-loader和style-loader加載,loader解析順序是從右往左
(3)通過配置webpack.config.js :
//在webpack.config.js插入modules屬性;(1)rules中包含對象數組,每個對象中{test,use}test對應正則表達式,use包含多個所需loader,如只需一個loader可省去use,格式如:loader : 'xxx-loader'
modules : { rules : [ {
test : /\.css/, use : [ { loader : 'style-loader'}, { loader : 'css-loader', options : { module : true } } ] },
{//第二個loader},
{//第三個loader}
] }
1.模板:
(1)html-loader:將HTML文件導出編譯為字符串,可供js識別的其中一個模塊
(2)pug-loader : 加載pug模板
(3)jade-loader : 加載jade模板(是pug的前身,由於商標問題改名為pug)
(4)ejs-loader : 加載ejs模板
(5)handlebars-loader : 將Handlebars模板轉移為HTML
2.樣式:
(1)css-loader : 解析css文件中代碼
(2)style-loader : 將css模塊作為樣式導出到DOM中
(3)less-loader : 加載和轉義less文件
(4)sass-loader : 加載和轉義sass/scss文件
(5)postcss-loader : 使用postcss加載和轉義css/sss文件
3.腳本轉換編譯:
(1)script-loader : 在全局上下文中執行一次javascript文件,不需要解析
(2)babel-loader : 加載ES6+ 代碼后使用Babel轉義為ES5后瀏覽器才能解析
(3)typescript-loader : 加載Typescript腳本文件
(4)coffee-loader : 加載Coffeescript腳本文件
4.JSON加載:
(1)json-loader : 加載json文件(默認包含)
(2)json5-loader : 加載和轉義JSON5文件
5.Files文件
(1)raw-loader : 加載文件原始內容(utf-8格式)
(2)url-loader : 多數用於加載圖片資源,超過文件大小顯示則返回data URL
(3)file-loader : 將文件發送到輸出的文件夾並返回URL(相對路徑)
(4)jshint-loader : 檢查代碼格式錯誤
6.加載框架:
(1)vue-loader : 加載和轉義vue組件
(2)angualr2-template--loader : 加載和轉義angular組件
(3)react-hot-loader : 動態刷新和轉義react組件中修改的部分,基於webpack-dev-server插件需先安裝,然后在webpack.config.js中引用react-hot-loader