详解webpack进阶之loader篇


Posted in Javascript onAugust 23, 2017

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

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

Javascript 相关文章推荐
JS控件的生命周期介绍
Oct 22 Javascript
3种Jquery限制文本框只能输入数字字母的方法
Dec 03 Javascript
js获取数组的最后一个元素
Apr 14 Javascript
jQuery给div,Span, a ,button, radio 赋值与取值
Jun 24 Javascript
AngularJS中过滤器的使用与自定义实例代码
Sep 17 Javascript
Jq通过td获取同行其它列td的方法
Oct 05 Javascript
如何使用jquery实现文字上下滚动效果
Oct 12 Javascript
Javascript之深入浅出prototype
Feb 06 Javascript
Vue项目pdf(base64)转图片遇到的问题及解决方法
Oct 19 Javascript
微信小程序如何使用globalData的方法
Jun 06 Javascript
JS实现页面数据懒加载
Feb 13 Javascript
uni-app微信小程序登录授权的实现
May 22 Javascript
Vue中定义全局变量与常量的各种方式详解
Aug 23 #Javascript
基于JavaScript实现带数据验证和复选框的表单提交
Aug 23 #Javascript
使用JS组件实现带ToolTip验证框的实例代码
Aug 23 #Javascript
利用Vue实现移动端图片轮播组件的方法实例
Aug 23 #Javascript
详解AngularJS跨页面传值(ui-router)
Aug 23 #Javascript
vue中页面跳转拦截器的实现方法
Aug 23 #Javascript
jquery.rotate.js实现可选抽奖次数和中奖内容的转盘抽奖代码
Aug 23 #jQuery
You might like
php实现的太平洋时间和北京时间互转的自定义函数分享
2014/08/19 PHP
PHP7新特性foreach 修改示例介绍
2016/08/26 PHP
PHP简单预防sql注入的方法
2016/09/27 PHP
php文件上传类的分享
2017/07/06 PHP
ajax+php实现无刷新验证手机号的实例
2017/12/22 PHP
利用jquery操作select下拉列表框的代码
2010/06/04 Javascript
jQuery中offset()方法用法实例
2015/01/16 Javascript
javascript实现显示和隐藏div方法汇总
2015/08/14 Javascript
SublimeText自带格式化代码功能之reindent
2015/12/27 Javascript
浅析AngularJS Filter用法
2015/12/28 Javascript
Bootstrap按钮下拉菜单组件详解
2016/05/10 Javascript
javascript与jquery动态创建html元素示例
2016/07/25 Javascript
Bootstrap精简教程中秋大放送
2016/09/15 Javascript
详解基于angular路由的requireJs按需加载js
2017/01/20 Javascript
用云开发Cloudbase实现小程序多图片内容安全监测的代码详解
2020/06/07 Javascript
vue深度监听(监听对象和数组的改变)与立即执行监听实例
2020/09/04 Javascript
javascript使用canvas实现饼状图效果
2020/09/08 Javascript
nodejs中使用worker_threads来创建新的线程的方法
2021/01/22 NodeJs
分析Python读取文件时的路径问题
2018/02/11 Python
pygame库实现移动底座弹球小游戏
2020/04/14 Python
python opencv如何实现图片绘制
2020/01/19 Python
Django的CVB实例详解
2020/02/10 Python
基于Django signals 信号作用及用法详解
2020/03/28 Python
解决Keras的自定义lambda层去reshape张量时model保存出错问题
2020/07/01 Python
Jabra捷波朗美国官网:用于办公、车载和运动的无线蓝牙耳麦
2017/02/01 全球购物
英国电动工具购买网站:Anglia Tool Centre
2017/04/25 全球购物
英文翻译的自我评价语句
2013/10/04 职场文书
法律专业应届本科毕业生求职信
2013/10/25 职场文书
广告学毕业生求职信
2014/01/30 职场文书
同学聚会主持词
2014/03/18 职场文书
高中语文课后反思
2014/04/27 职场文书
公司员工奖惩制度
2015/08/04 职场文书
你会写请假条吗?
2019/06/26 职场文书
Python编程中Python与GIL互斥锁关系作用分析
2021/09/15 Python
基于Redis zSet实现滑动窗口对短信进行防刷限流的问题
2022/02/12 Redis
微软团队与 NASA 科学家和惠普企业(HPE)的工程师合作
2022/04/21 数码科技