详解webpack进阶之loader篇

时间:2021-05-25

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'}, ]}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章