webpack進階之loader篇


webpack的loaders是一大特色,也是很重要的一部分。這遍博客我將分類講解一些常用的laoder

一、loaders之 預處理

  • css-loader 處理css中路徑引用等問題

  • style-loader 動態把樣式寫入css

  • sass-loader scss編譯器

  • less-loader less編譯器

  • postcss-loader scss再處理

npm install --save -dev css-loader style-loader sass-loader less-loader postcss-loader

栗子:

module: { loaders: [ {test: /\.css$/, loader: "style!css?sourceMap!postcss"}, {test: /\.less$/, loader: "style!css!less|postcss"}, {test: /\.scss$/, loader: "style!css!sass|postcss"} ] }

二、loaders之 js處理

  • babel-loader

  • jsx-loader

npm install --save-dev babel-core babel-preset-es2015 babel-loader jsx-loader

栗子

新建一個名字為.babelrc的文件

{
  "presets": ["es2015","react"], "plugins":["antd"] }

新建一個名字為webpack.config.js文件

module.exports ={
 entry: './entry.js',  output: { path: __dirname,  filename: 'bundle.js' },  module: { loaders: [ {test: /\.js$/, loader: "babel", exclude: /node_modules/}, {test: /\.jsx$/, loader: "jsx-loader"} {test: /.css$/, loader: 'style!css'} ] } };

三、loaders之 圖片處理

  • url-loader

npm install --save-dev url-loadr

module: { loaders: [ {test: /\.(jpg|png)$/, loader: "url?limit=8192"}, ] }

四、loaders之 文件處理

  • file-loader

npm install --save-dev file-loader

module: {
  loaders: [
    {
      test: /\.(png|jpg|jpeg|gif|svg|woff|woff2|ttf|eot)$/, loader: 'file' }, ] } 

五、loaders之 json處理

  • json-loader

npm install --save-dev json-loader

module: { loaders: [ {test: /\.json$/,loader: 'json'}, ] }

六、loaders之 html處理

  • raw-loader

npm install --save-dev raw-loader

 
module: { loaders: [ { test: /\.html$/,loader: 'raw'}, ] }
歡迎大家加入前端交流群一起討論:498524034


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM