[分享] Babel-ES6转ES5

简介: [分享] Babel-ES6转ES5

本地安装babel-preset-es2015 和 babel-cli
npm install --save-dev babel-cli babel-preset-es2015
新建新建.babelrc文件
输入以下:

{
    "presets":[
        "es2015"
    ],
    "plugins":[]
}

单文件转换
babel es6/index.js -o es5/index.js

文件夹转换
babel es6/index.js -d es5/index.js

babel-polyfill
$ npm install --save babel-polyfill
然后,在脚本头部,加入如下一行代码

import 'babel-polyfill';
// 或者
require('babel-polyfill');
//或者在webpack.config.js中加入babel-polyfill到你的入口数组:
module.exports = {
    entry:["babel-polyfill","./app/js"]
}
//在浏览器中使用在用npm下载的babel-polyfill文件中找到dist/polyfill.js文件。这个需要你在babel编译代码之前引入。你可以把它添加到你的编译文件最前面或者用<script>标签放到最前面。

Babel默认只转换新的JavaScript句法(syntax),而不转换新的API,比如Iterator、Generator、Set、Maps、Proxy、Reflect、Symbol、Promise等全局对象,以及一些定义在全局对象上的方法(比如Object.assign)都不会转码。

举例来说,ES6在Array对象上新增了Array.from方法。Babel就不会转码这个方法。如果想让这个方法运行,必须使用babel-polyfill,为当前环境提供一个垫片。


课外资料
阮一峰老师Babel入门

目录
相关文章
|
前端开发 JavaScript Java
ES11,ES12,ES13
ES11,ES12,ES13
108 1
|
JSON 前端开发 JavaScript
ES6、ES7、ES8、ES9、ES10、ES11新特性3
ES6、ES7、ES8、ES9、ES10、ES11新特性
|
前端开发
ES6、ES7、ES8、ES9、ES10、ES11新特性2
ES6、ES7、ES8、ES9、ES10、ES11新特性
|
2月前
|
JSON JavaScript 前端开发
浅谈ES5与ES6
浅谈ES5与ES6
38 3
|
前端开发 JavaScript Java
ES6、ES7、ES8、ES9、ES10、ES11新特性1
ES6、ES7、ES8、ES9、ES10、ES11新特性
|
前端开发 安全
说说你的ES7-ES12的了解
说说你的ES7-ES12的了解
|
前端开发 索引
ES7,ES8
ES7,ES8
62 0
|
JavaScript 前端开发 索引
ES9,ES10
ES9,ES10
71 0
|
JSON JavaScript 前端开发
ES5和ES6的介绍
《前端基础》
433 0
|
前端开发 JavaScript 网络架构
除了ES6,ES还有那些必须要懂得知识?
Includes 方法用来检测数组中是否包含某个元素,返回布尔类型值。
109 0
除了ES6,ES还有那些必须要懂得知识?