详解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 学习笔记 选择器之四
Jul 23 Javascript
js下用eval生成JSON对象
Sep 17 Javascript
js判断页面中是否有指定控件的简单实例
Mar 04 Javascript
JS获取浏览器语言动态加载JS文件示例代码
Oct 31 Javascript
JS实现单行文字不间断向上滚动的方法
Jan 29 Javascript
JS动态添加选项案例分析
Oct 17 Javascript
javaScript中定义类或对象的五种方式总结
Dec 04 Javascript
Angularjs分页查询的实现
Feb 24 Javascript
JavaScript数组_动力节点Java学院整理
Jun 26 Javascript
Vuex利用state保存新闻数据实例
Jun 28 Javascript
JavaScript监听一个DOM元素大小变化
Apr 26 Javascript
vue proxy 的优势与使用场景实现
Jun 15 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输入数据统一类实例
2015/02/23 PHP
解决Laravel blade模板转义html标签的问题
2019/09/03 PHP
PHP pthreads v3使用中的一些坑和注意点分析
2020/02/21 PHP
利用js对象弹出一个层
2008/03/26 Javascript
js 函数的副作用分析
2011/08/23 Javascript
js写的评论分页(还不错)
2013/12/23 Javascript
JS中的form.submit()不能提交表单的错误原因
2014/10/08 Javascript
jQuery实现单击弹出Div层窗口效果(可关闭可拖动)
2015/09/19 Javascript
JS封装的自动创建表格的实现代码
2016/06/15 Javascript
JavaScript数据存储 Cookie篇
2016/07/02 Javascript
angular.js分页代码的实例
2016/07/27 Javascript
jQuery easyui刷新当前tabs的方法
2016/09/23 Javascript
jquery自定义插件结合baiduTemplate.js实现异步刷新(附源码)
2016/12/22 Javascript
layui选项卡效果实现代码
2017/05/19 Javascript
基于JavaScript实现选项卡效果
2017/07/21 Javascript
利用node.js+mongodb如何搭建一个简单登录注册的功能详解
2017/07/30 Javascript
Three.js加载外部模型的教程详解
2017/11/10 Javascript
vue 音乐App QQ音乐搜索列表最新接口跨域设置方法
2018/09/25 Javascript
jQuery实现的自定义轮播图功能详解
2018/12/28 jQuery
js根据需要计算数组中重复出现某个元素的个数
2019/01/18 Javascript
微信小程序如何使用云开发
2019/05/17 Javascript
[51:14]LGD vs VP 2018国际邀请赛淘汰赛BO3 第一场 8.21
2018/08/22 DOTA
python使用urllib2提交http post请求的方法
2015/05/26 Python
Python实现希尔排序算法的原理与用法实例分析
2017/11/23 Python
浅析PEP570新语法: 只接受位置参数
2019/10/15 Python
python中的socket实现ftp客户端和服务器收发文件及md5加密文件
2020/04/01 Python
Jupyter Notebook远程登录及密码设置操作
2020/04/10 Python
python设置中文界面实例方法
2020/10/27 Python
详解使用postMessage解决iframe跨域通信问题
2019/11/01 HTML / CSS
玖熙女鞋美国官网:Nine West
2016/10/06 全球购物
一套带网友答案的.NET笔试题
2016/12/06 面试题
六查六看自检自查剖析材料
2014/10/14 职场文书
社区安全温馨提示语
2015/07/14 职场文书
2016年小学教师政治学习心得体会
2016/01/23 职场文书
MySQL中CURRENT_TIMESTAMP的使用方式
2021/11/27 MySQL
TypeScript实用技巧 Nominal Typing名义类型详解
2022/09/23 Javascript