详解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 相关文章推荐
检测input每次的输入是否合法遇到汉字输入就有问题
May 23 Javascript
html向js方法传递参数具体实现
Aug 08 Javascript
js螺旋动画效果的具体实例
Nov 15 Javascript
Js+php实现异步拖拽上传文件
Jun 23 Javascript
jQuery.each使用详解
Jul 07 Javascript
基于jQuery实现音乐播放试听列表
Apr 14 Javascript
bootstrap下拉列表与输入框组结合的样式调整
Oct 08 Javascript
node.js基于mongodb的搜索分页示例
Jan 22 Javascript
小程序实现展开/收起的效果示例
Sep 22 Javascript
webpack file-loader和url-loader的区别
Jan 15 Javascript
vue基础之data存储数据及v-for循环用法示例
Mar 08 Javascript
浅析TypeScript 命名空间
Mar 19 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
ThinkPHP中__initialize()和类的构造函数__construct()用法分析
2014/11/29 PHP
使用Yii2实现主从数据库设置
2016/11/20 PHP
PHP安装扩展mcrypt以及相关依赖项深入讲解
2021/03/04 PHP
javascript中创建对象的几种方法总结
2013/11/01 Javascript
浅析jQuery中调用ajax方法时在不同浏览器中遇到的问题
2014/06/11 Javascript
一个js过滤空格的小函数
2014/10/10 Javascript
详解JavaScript 中的 replace 方法
2016/01/01 Javascript
JavaScript输入分钟、秒倒计时技巧总结(附代码)
2017/08/17 Javascript
强大的JavaScript响应式图表Chartist.js的使用
2017/09/13 Javascript
基于VUE.JS的移动端框架Mint UI的使用
2017/10/11 Javascript
vue element项目引入icon图标的方法
2018/06/06 Javascript
electron中使用bootstrap的示例代码
2018/11/06 Javascript
js实现页面多个日期时间倒计时效果
2019/06/20 Javascript
基于Vue 撸一个指令实现拖拽功能
2019/10/09 Javascript
微信js-sdk 录音功能的示例代码
2019/11/01 Javascript
关于vue3.0中的this.$router.replace({ path: '/'})刷新无效果问题
2020/01/16 Javascript
区分vue-router的hash和history模式
2020/10/03 Javascript
微信小程序实现电影App导航和轮播
2020/11/30 Javascript
下载安装setuptool和pip linux安装pip    
2014/01/24 Python
python实现ipsec开权限实例
2014/11/11 Python
Python实现的飞速中文网小说下载脚本
2015/04/23 Python
Python中类型关系和继承关系实例详解
2015/05/25 Python
python+selenium打印当前页面的titl和url方法
2018/06/22 Python
解决python文件双击运行秒退的问题
2019/06/24 Python
基于Python 中函数的 收集参数 机制
2019/12/21 Python
python+tifffile之tiff文件读写方式
2020/01/13 Python
使用Pytorch来拟合函数方式
2020/01/14 Python
Python3实现监控新型冠状病毒肺炎疫情的示例代码
2020/02/13 Python
Brookstone美国官网:独特新奇产品
2017/03/04 全球购物
物理研修随笔感言
2014/02/14 职场文书
幼儿园运动会口号
2014/06/07 职场文书
文案策划岗位职责
2015/02/11 职场文书
面试复试通知单
2015/04/24 职场文书
大学学生会辞职信
2015/05/13 职场文书
学校2016年全国助残日活动总结
2016/04/01 职场文书
详解非极大值抑制算法之Python实现
2021/06/28 Python