详解设置Webstorm 利用babel将ES6自动转码成ES5


Posted in Javascript onDecember 20, 2017

前言:ECMAScript 6是JavaScript语言的下一代标准,已经在2015年6月正式发布了。Mozilla公司将在这个标准的基础上,推出JavaScript 2.0。ES6的目标,是使得JavaScript语言可以用来编写大型的复杂的应用程序,成为企业级开发语言。但是现代浏览器对ES6新特性支持度不高,所以要想在浏览器中直接使用ES6的新特性就得借助别的工具来实现。

今天我就来分享一下,如何配置Webstorm 利用babel将ES6自动转码成ES5。Babel是一个广泛使用的转码器,babel可以将ES6代码完美地转换为ES5代码,所以我们不用等到浏览器的支持就可以在项目中使用ES6的特性。

1.在Webstorm 里新建一个空项目,取名为es6demo.

2..然后在根目录下面新建一个package.json,只需要写明两个属性即name和version。

详解设置Webstorm 利用babel将ES6自动转码成ES5

3.打开webstorm的终端(Terminal),快捷键为Alt+F12,安装babel-cli。也可全局安装。

或者这样打开:

详解设置Webstorm 利用babel将ES6自动转码成ES5

安装babel-cli: npm install --save-dev babel-cli

4.安装完babel-cli后,可以看到新生成了一个node_modules文件和一个package-lock.json文件,同时发现package.json文件中多出了

"devDependencies": {
"babel-cli": "^6.26.0"

}

这样一行代码,此代码说明babel-cli已安装成功,形成了依赖。

详解设置Webstorm 利用babel将ES6自动转码成ES5

5.然后再Settings->Languages & Frameworks中选择Javascript选项,同时将version版本选择为ECMAScript6即可。

详解设置Webstorm 利用babel将ES6自动转码成ES5

6.再在webstorm的终端(Terminal),安装Babel的preset以正确识别ES6代码,命令如下:

npm install --save-dev babel-preset-es2015

安装完后同时在package.json文件中会多出

"babel-preset-es2015": "^6.24.1" 这样一行代码,说明babel-preset-es2015也成功安装上了。

详解设置Webstorm 利用babel将ES6自动转码成ES5

7.在根目录下面新建一个名为.babelrc文件,内容如下:

{

 "presets": [

  "es2015"

 ]

}

8.设置File Watcher. File--settings--Tools--File Watcher。

详解设置Webstorm 利用babel将ES6自动转码成ES5

详解设置Webstorm 利用babel将ES6自动转码成ES5

9.创建一个名为test.js,在里面写es6的语法,不再报错。test-compiled.js就是编译成es5的文件,默认是严格模式。

详解设置Webstorm 利用babel将ES6自动转码成ES5

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

Javascript 相关文章推荐
字段太多jquey快速清空表单内容方法
Aug 21 Javascript
JavaScript实现下拉列表框数据增加、删除、上下排序的方法
Aug 11 Javascript
基于JavaScript怎么实现让歌词滚动播放
Nov 03 Javascript
原生js配合cookie制作保存路径的拖拽
Dec 29 Javascript
全面总结Javascript对数组对象的各种操作
Jan 22 Javascript
js实现textarea限制输入字数
Feb 13 Javascript
基于JS实现9种不同的面包屑和分布式多步骤导航效果
Feb 21 Javascript
Bootstrap modal 多弹窗之叠加关闭阴影遮罩问题的解决方法
Feb 27 Javascript
JS对象创建的几种方式整理
Feb 28 Javascript
vuex实现登录状态的存储,未登录状态不允许浏览的方法
Mar 09 Javascript
在react项目中使用antd的form组件,动态设置input框的值
Oct 24 Javascript
Javascript文本框脚本实现方法解析
Oct 30 Javascript
代码详解Vuejs响应式原理
Dec 20 #Javascript
详解Javascript 中的 class、构造函数、工厂函数
Dec 20 #Javascript
在一个页面实现两个zTree联动的方法
Dec 20 #Javascript
浅谈基于Vue.js的移动组件库cube-ui
Dec 20 #Javascript
Angular2+如何去除url中的#号详解
Dec 20 #Javascript
JS基于递归实现网页版计算器的方法分析
Dec 20 #Javascript
JS小球抛物线轨迹运动的两种实现方法详解
Dec 20 #Javascript
You might like
php设计模式 Facade(外观模式)
2011/06/26 PHP
php防止CC攻击代码 php防止网页频繁刷新
2015/12/21 PHP
详解WordPress中简码格式标签编写的基本方法
2015/12/22 PHP
php下载文件,添加响应头的简单实例
2016/09/22 PHP
Yii2中多表关联查询hasOne hasMany的方法
2017/02/15 PHP
发布一个高效的JavaScript分析、压缩工具 JavaScript Analyser
2007/11/30 Javascript
来自国外的14个图片放大编辑的jQuery插件整理
2010/10/20 Javascript
那些年,我还在学习jquery 学习笔记
2012/03/05 Javascript
完美解决input[type=number]无法显示非数字字符的问题
2017/02/28 Javascript
JS HTML图片显示Canvas 压缩功能
2017/07/21 Javascript
vue mint-ui tabbar变组件使用
2018/05/04 Javascript
JS实现盒子拖拽效果
2020/02/06 Javascript
原生JS实现弹幕效果的简单操作指南
2020/11/10 Javascript
[54:06]OG vs TNC 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
[03:08]迎霜节狂欢!2018年迎霜节珍藏Ⅰ一览
2018/12/25 DOTA
python实现计算资源图标crc值的方法
2014/10/05 Python
python通过socket查询whois的方法
2015/07/18 Python
浅析Python中yield关键词的作用与用法
2016/11/29 Python
用Python写王者荣耀刷金币脚本
2017/12/21 Python
PyQT实现多窗口切换
2018/04/20 Python
根据DataFrame某一列的值来选择具体的某一行方法
2018/07/03 Python
PyCharm 设置SciView工具窗口的方法
2019/01/15 Python
python调用c++ ctype list传数组或者返回数组的方法
2019/02/13 Python
Python 合并拼接字符串的方法
2020/07/28 Python
Python中qutip用法示例详解
2020/10/02 Python
css3实现一款模仿iphone样式的注册表单
2013/03/20 HTML / CSS
英语专业个人求职自荐信
2013/09/21 职场文书
生物制药自我鉴定
2014/01/25 职场文书
求职自荐信的格式
2014/04/07 职场文书
学生党员一帮一活动总结
2014/07/08 职场文书
人事文员岗位职责
2015/02/04 职场文书
转正申请报告格式
2015/05/15 职场文书
2015年仓库管理工作总结
2015/05/25 职场文书
2016年优秀教师先进事迹材料
2016/02/26 职场文书
2016年世界人口日宣传活动总结
2016/04/05 职场文书
Go 通过结构struct实现接口interface的问题
2021/10/05 Golang