Webpack 之 babel-loader文件预处理器详解


Posted in Javascript onMarch 23, 2018

loader官方解释是文件预处理器,通俗点说就是webpack在处理静态文件的时候,需要使用 loader 来加载各种文件,比如: html文件需要使用html-loader ,css 需要使用css-loader 、 style-loader 等等。

今天我们来认识的是 babel-loader,用来处理ES6语法,将其编译为浏览器可以执行的js语法。

安装

我们需要用到 babel-loader babel-core babel-preset

配合版本: webpack 3.x | babel-loader 8.x | babel 7.x

npm install babel-loader@8.0.0-beta.0 @babel/core @babel/preset-env webpack
webpack 3.x babel-loader 7.x | babel 6.x

使用

先来上一个小栗子:

var htmlWebpackPlugin = require('html-webpack-plugin')

const path = require('path')
module.exports = {
  mode: 'development',
  entry: './src/app.js',
  output: {
    filename: 'js/bundle.js',
    path: path.resolve(__dirname, 'dist')
  },
  module: {
    rules: [
      {
        test: /\.js$/,
        exclude: /(node_modules|bower_components)/, // (不处理node_modules 和 bower_components下的js文件) 优化处理加快速度
        use: {
          loader: 'babel-loader',
          options: {     // options选项中的presets设置的就是当前js的版本
            presets: ['@babel/preset-env']
          }
        }
      }
    ]
  },
  plugins: [
    new htmlWebpackPlugin({
      template: 'index.html',
      inject: 'body',
      filename: 'index.html'
    })
  ]
}

可以使用 options 属性 来给 loader 传递选项。

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

Javascript 相关文章推荐
javascript innerHTML、outerHTML、innerText、outerText的区别
Nov 24 Javascript
jQuery maxlength文本字数限制插件
Apr 16 Javascript
鼠标右击事件代码(asp.net后台)
Jan 27 Javascript
js中数组Array的一些常用方法总结
Aug 12 Javascript
jquery实现简单手风琴菜单效果实例
Jun 13 Javascript
javascript实现tab切换的两个实例
Nov 05 Javascript
JS运动相关知识点小结(附弹性运动示例)
Jan 08 Javascript
深入理解JavaScript中的for循环
Feb 07 Javascript
vue实现同一个页面可以有多个router-view的方法
Sep 20 Javascript
一些手写JavaScript常用的函数汇总
Apr 16 Javascript
基于JavaScript实现十五拼图代码实例
Apr 26 Javascript
全面解析Vue中的$nextTick
Dec 24 Vue.js
Node.js实现注册邮箱激活功能的方法示例
Mar 23 #Javascript
Angular学习笔记之集成三方UI框架、控件的示例
Mar 23 #Javascript
Vue自定义过滤器格式化数字三位加一逗号实现代码
Mar 23 #Javascript
JavaScript 五大常见函数
Mar 23 #Javascript
JS中原始值和引用值的储存方式示例详解
Mar 23 #Javascript
剖析Angular Component的源码示例
Mar 23 #Javascript
vue利用axios来完成数据的交互
Mar 23 #Javascript
You might like
有道搜索和IP138的IP的API接口(PHP应用)
2012/11/29 PHP
PHP获取mysql数据表的字段名称和详细信息的方法
2014/09/27 PHP
PHP+iframe模拟Ajax上传文件功能示例
2019/07/02 PHP
window.open的功能全解析
2006/10/10 Javascript
JS 中document.URL 和 windows.location.href 的区别
2009/11/11 Javascript
js 返回时间戳所对应的具体时间
2010/07/20 Javascript
javascript中的关于类型转换的性能优化
2010/12/14 Javascript
关于hashchangebroker和statehashable的补充文档
2011/08/08 Javascript
html组件不可输入(只读)同时任何组件都有效
2013/04/01 Javascript
基于JavaScript自定义构造函数的详解说明
2013/04/24 Javascript
可自己添加html的伪弹出框实现代码
2013/09/08 Javascript
JavaScript实现的使用键盘控制人物走动实例
2014/08/27 Javascript
使用微信内置浏览器点击下拉框出现页面乱跳转现象(iphone),该怎么办
2016/01/04 Javascript
JS实现1000以内被3或5整除的数字之和
2016/02/18 Javascript
Vue.js数据绑定之data属性
2017/07/07 Javascript
vue学习笔记五:在vue项目里面使用引入公共方法详解
2019/04/04 Javascript
vue使用@scroll监听滚动事件时,@scroll无效问题的解决方法详解
2019/10/15 Javascript
[02:38]DOTA2 夜魇暗潮2020活动介绍官方视频
2020/11/04 DOTA
同时安装Python2 & Python3 cmd下版本自由选择的方法
2017/12/09 Python
教你利用Python玩转histogram直方图的五种方法
2018/07/30 Python
python实现指定ip端口扫描方式
2019/12/17 Python
Python中格式化字符串的四种实现
2020/05/26 Python
python 统计list中各个元素出现的次数的几种方法
2021/02/20 Python
CSS3之背景尺寸Background-size使用介绍
2013/10/14 HTML / CSS
浅析图片上传及canvas压缩的流程
2020/06/10 HTML / CSS
俄罗斯最大的在线珠宝大卖场:Nebo
2019/12/08 全球购物
当x.equals(y)等于true时,x.hashCode()与y.hashCode()可以不相等,这句话对不对
2015/05/02 面试题
中专毕业生自我鉴定
2014/02/02 职场文书
优秀应届毕业生推荐信
2014/02/18 职场文书
质量月活动策划方案
2014/03/10 职场文书
优秀共产党员推荐材料
2014/12/18 职场文书
行政人事专员岗位职责
2015/04/07 职场文书
教师继续教育反思周记
2015/06/25 职场文书
获奖感言一句话
2015/07/31 职场文书
2016清明节森林防火广播稿
2015/12/17 职场文书
详解CSS玩转图片Base64编码
2021/05/25 HTML / CSS