详解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 相关文章推荐
某页码显示的helper 少量调整,另附js版
Sep 12 Javascript
如何让DIV可编辑、可拖动示例代码
Sep 18 Javascript
在Javascript中处理字符串之big()方法的使用
Jun 08 Javascript
JS清除文本框内容离开在恢复及鼠标离开文本框时触发js的方法
Jan 12 Javascript
javascript中不易分清的slice,splice和split三个函数
Mar 29 Javascript
javascript使用 concat 方法对数组进行合并的方法
Sep 08 Javascript
利用JS判断字符串是否含有数字与特殊字符的方法小结
Nov 25 Javascript
利用JS实现简单的日期选择插件
Jan 23 Javascript
利用Node.js对文件进行重命名
Mar 12 Javascript
Vue的土著指令和自定义指令实例详解
Feb 04 Javascript
解决vue单页路由跳转后scrollTop的问题
Sep 03 Javascript
js实现双色球效果
Aug 02 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
mysql,mysqli,PDO的各自不同介绍
2012/09/19 PHP
PHP插入排序实现代码
2013/04/04 PHP
php中数字、字符与对象判断函数用法实例
2014/11/26 PHP
PHP利用hash冲突漏洞进行DDoS攻击的方法分析
2015/03/26 PHP
在php和MySql中计算时间差的方法详解
2015/03/27 PHP
帝国cms常用标签汇总
2015/07/06 PHP
PHP中常用的数组操作方法笔记整理
2016/05/16 PHP
兼容IE和Firefox的javascript获取iframe文档内容的函数
2011/08/15 Javascript
jQuery on方法传递参数示例
2014/12/09 Javascript
微信小程序-详解数据缓存
2016/11/24 Javascript
浅谈javascript中的事件冒泡和事件捕获
2016/12/28 Javascript
对象不支持indexOf属性或方法的解决方法(必看)
2017/05/28 Javascript
node.js+captchapng+jsonwebtoken实现登录验证示例
2017/08/17 Javascript
解决vue打包css文件中背景图片的路径问题
2018/09/03 Javascript
使用weixin-java-miniapp配置进行单个小程序的配置详解
2019/03/29 Javascript
js计算最大公约数和最小公倍数代码实例
2019/09/11 Javascript
JavaScript实现轮播图效果代码实例
2019/09/28 Javascript
JS实现公告上线滚动效果
2021/01/10 Javascript
JavaScript实现4位随机验证码的生成
2021/01/28 Javascript
[01:33]PWL开团时刻DAY2-开雾与反开雾
2020/10/31 DOTA
Python类属性与实例属性用法分析
2015/05/09 Python
详解python发送各类邮件的主要方法
2016/12/22 Python
详解 Python中LEGB和闭包及装饰器
2017/08/03 Python
windows上安装python3教程以及环境变量配置详解
2019/07/18 Python
python实现广度优先搜索过程解析
2019/10/19 Python
在python中计算ssim的方法(与Matlab结果一致)
2019/12/19 Python
绩效工资分配方案
2014/01/18 职场文书
《在山的那边》教学反思
2014/02/23 职场文书
大学生两会精神学习心得体会
2014/03/10 职场文书
会计电算化专业自荐信
2014/03/15 职场文书
优秀的应届生自荐信
2014/05/23 职场文书
洗手间标语
2014/06/23 职场文书
连锁超市项目计划书
2014/09/15 职场文书
证劵公司反洗钱宣传活动总结
2015/05/08 职场文书
民事调解协议书
2016/03/21 职场文书
三种方式清除vue路由跳转router-link的历史记录
2022/04/10 Vue.js