详解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 相关文章推荐
让图片旋转任意角度及JQuery插件使用介绍
Mar 20 Javascript
JS 日期比较大小的简单实例
Jan 13 Javascript
JS删除字符串中重复字符方法
Mar 09 Javascript
Javascript实现的常用算法(如冒泡、快速、鸽巢、奇偶等)
Apr 29 Javascript
JavaScript控制网页平滑滚动到指定元素位置的方法
Apr 17 Javascript
使用CDN和AJAX加速WordPress中jQuery的加载
Dec 05 Javascript
学习JavaScript设计模式之中介者模式
Jan 14 Javascript
PassWord输入框代码分享
Jun 07 Javascript
js实现移动端微信页面禁止字体放大
Feb 16 Javascript
JS实现简单拖拽效果
Jun 21 Javascript
vue+element 模态框表格形式的可编辑表单实现
Jun 07 Javascript
jquery-ui 进度条功能示例【测试可用】
Jul 25 jQuery
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初学者头疼问题总结
2006/10/09 PHP
php5.2以下版本无json_decode函数的解决方法
2014/05/25 PHP
两种设置php载入页面时编码的方法
2014/07/29 PHP
在Win7 中为php扩展配置Xcache
2014/10/08 PHP
php实现mysql数据库分表分段备份
2015/06/18 PHP
PHP的Yii框架中Model模型的学习教程
2016/03/29 PHP
JS加ASP二级域名转向的代码
2007/05/17 Javascript
JavaScript 自动完成脚本整理(33个)
2009/10/20 Javascript
JS对象与json字符串格式转换实例
2014/10/28 Javascript
javascript实现博客园页面右下角返回顶部按钮
2015/02/22 Javascript
原生js制作简单的数字键盘
2015/04/24 Javascript
详细分析JavaScript变量类型
2015/07/08 Javascript
jQuery mobile在页面加载时添加加载中效果 document.ready 和window.onload执行顺序比较
2016/07/14 Javascript
js实现定时进度条完成后切换图片
2017/01/04 Javascript
Vue的全局过滤器和私有过滤器的实现
2020/04/20 Javascript
Vue实现穿梭框效果
2020/09/30 Javascript
Python中的is和id用法分析
2015/01/26 Python
Python中列表、字典、元组数据结构的简单学习笔记
2016/03/20 Python
使用python实现tcp自动重连
2017/07/02 Python
python与C互相调用的方法详解
2017/07/14 Python
python+tkinter编写电脑桌面放大镜程序实例代码
2018/01/16 Python
Tensorflow 自带可视化Tensorboard使用方法(附项目代码)
2018/02/10 Python
如何用OpenCV -python3实现视频物体追踪
2019/12/04 Python
Android本地应用打开方法——通过html5写连接
2016/03/11 HTML / CSS
美国爆米花工厂:The Popcorn Factory
2019/09/14 全球购物
工程力学硕士生的自我评价范文
2013/11/16 职场文书
小学生学习感言
2014/03/10 职场文书
关于保护环境的建议书
2014/05/13 职场文书
护校行动方案
2014/05/31 职场文书
2014预备党员批评与自我批评思想汇报
2014/09/20 职场文书
2014年帮扶工作总结
2014/11/26 职场文书
财务总监岗位职责
2015/02/03 职场文书
科技活动总结范文
2015/05/11 职场文书
道歉的话语大全
2015/05/12 职场文书
办公用品管理制度
2015/08/04 职场文书
MySQL的全局锁和表级锁的具体使用
2021/08/23 MySQL