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