WebStorm ES6 语法支持设置&babel使用及自动编译(详解)


Posted in Javascript onSeptember 08, 2017

一、语法支持设置

Preferences > Languages & Frameworks > JavaScript

WebStorm ES6 语法支持设置&babel使用及自动编译(详解)

二、Babel安装

1、全局安装

npm install -g babel-cli

2、当前项目,适用于使用不同babel版本的情况

npm install --save-dev babel-cli

三、Babel基本用法

# 转码结果输出到标准输出
 babel example.js

# 转码结果写入一个文件
# --out-file 或 -o 参数指定输出文件
 babel example.js --out-file compiled.js
# 或者
 babel example.js -o compiled.js

# 整个目录转码
# --out-dir 或 -d 参数指定输出目录
 babel src --out-dir lib
# 或者
 babel src -d lib

# -s 参数生成source map文件
 babel src -d lib -s

四、webstorm中使用babel

0、新建一个test.js文件,用作测试用例

input.map(item => item + 1);

1、项目中需要增加一个文件: package.json

{ "name": "application-name", "version": "0.0.1"}

2、当前项目中,安装babel

npm install --save-dev babel-cli

3、使用WebStorm自带的File Watcher功能

Preferences > Tools > File Watchers ,点击右侧的+号,选择babel,直接点击OK即可。

操作完成后,这时候修改JS代码,就会发现同步生成了一个test-compiled.js 文件,打开后发现代码和test.js代码一致。

还需要配置转码规则,继续往下看。↓↓↓

WebStorm ES6 语法支持设置&babel使用及自动编译(详解)

4、添加配置文件 .babelrc

Babel的配置文件是.babelrc,存放在项目的根目录下。使用Babel的第一步,就是配置这个文件。

该文件用来设置转码规则和插件,基本格式如下。

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

5、设置转码规则

presets字段设定转码规则,官方提供以下的规则集,你可以根据需要安装。

# ES2015转码规则
npm install --save-dev babel-preset-es2015

# react转码规则
npm install --save-dev babel-preset-react

# ES7不同阶段语法提案的转码规则(共有4个阶段),选装一个
npm install --save-dev babel-preset-stage-0
npm install --save-dev babel-preset-stage-1
npm install --save-dev babel-preset-stage-2
npm install --save-dev babel-preset-stage-3

咱们需要安装es2015,命令如下:

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

6、更新配置文件 .babelrc

将相应的规则,保存至配置文件中。

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

7、完成,查看效果

以上步骤操作完成后,即可实现修改代码后,自动将ES6代码转换为ES5。

WebStorm ES6 语法支持设置&babel使用及自动编译(详解)

五、使用命令,手动编译代码

1、更改package.json文件

{
 "name": "application-name",
 "version": "0.0.1",
 "devDependencies": {
 "babel-cli": "^6.26.0" 
 },
 "scripts": {
 "build": "babel src -d lib"
 }
}

2、使用命令,生成ES5代码

npm run build

3、效果

会将src目录下的代码,编译到lib目录下。

WebStorm ES6 语法支持设置&babel使用及自动编译(详解)

以上这篇WebStorm ES6 语法支持设置&babel使用及自动编译(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript提取URL的搜索字符串中的参数(自定义函数实现)
Jan 22 Javascript
alert中断settimeout计时功能
Jul 26 Javascript
JS和JQ的event对象区别分析
Nov 24 Javascript
JavaScript实现相册弹窗功能(zepto.js)
Jun 21 Javascript
Bootstrap表单布局样式源代码
Jul 04 Javascript
关于JavaScript数组你所不知道的3件事
Aug 24 Javascript
关于Promise 异步编程的实例讲解
Sep 01 Javascript
用node-webkit把web应用打包成桌面应用(windows环境)
Feb 01 Javascript
Taro集成Redux快速上手的方法示例
Jun 21 Javascript
深入探索VueJS Scoped CSS 实现原理
Sep 23 Javascript
JsonProperty 的使用方法详解
Oct 11 Javascript
vue实现淘宝购物车功能
Apr 20 Javascript
React如何将组件渲染到指定DOM节点详解
Sep 08 #Javascript
javascript获取指定区间范围随机数的方法
Sep 08 #Javascript
原生js实现简单的模态框示例
Sep 08 #Javascript
javascript 面向对象实战思想分享
Sep 07 #Javascript
vue 封装自定义组件之tabal列表编辑单元格组件实例代码
Sep 07 #Javascript
用js实现before和after伪类的样式修改的示例代码
Sep 07 #Javascript
vue使用drag与drop实现拖拽的示例代码
Sep 07 #Javascript
You might like
php 正则 过滤html 的超链接
2009/06/02 PHP
php中将数组转成字符串并保存到数据库中的函数代码
2013/09/29 PHP
ThinkPHP路由机制简介
2016/03/23 PHP
PhpStorm本地断点调试的方法步骤
2018/05/21 PHP
JQuery中dataGrid设置行的高度示例代码
2014/01/03 Javascript
javascript与有限状态机详解
2014/05/08 Javascript
使用jQuery判断IE浏览器版本的代码
2014/06/14 Javascript
js实现鼠标触发图片抖动效果的方法
2015/02/27 Javascript
关于事件mouseover ,mouseout ,mouseenter,mouseleave的区别
2015/10/12 Javascript
极易被忽视的javascript面试题七问七答
2016/02/15 Javascript
JavaScript+CSS实现的可折叠二级菜单实例
2016/02/29 Javascript
通过Ajax使用FormData对象无刷新上传文件方法
2016/12/08 Javascript
input获取焦点时底部菜单被顶上来问题的解决办法
2017/01/24 Javascript
ng2学习笔记之bootstrap中的component使用教程
2017/03/09 Javascript
有关vue 开发钉钉 H5 微应用 dd.ready() 不执行问题及快速解决方案
2020/05/09 Javascript
实例解析Python的Twisted框架中Deferred对象的用法
2016/05/25 Python
python操作 hbase 数据的方法
2016/12/18 Python
Python实现的求解最小公倍数算法示例
2018/05/03 Python
django加载本地html的方法
2018/05/27 Python
pygame实现雷电游戏雏形开发
2018/11/20 Python
Win10下Python3.7.3安装教程图解
2019/07/08 Python
Django import export实现数据库导入导出方式
2020/04/03 Python
Python字符串格式化常用手段及注意事项
2020/06/17 Python
Python如何创建装饰器时保留函数元信息
2020/08/07 Python
德国狗狗用品在线商店:Schecker
2017/03/17 全球购物
Clarins娇韵诗英国官网:来自法国的天然护肤品牌
2017/04/18 全球购物
香港零食网购:上仓胃子
2020/06/08 全球购物
超市营业员求职简历的自我评价
2013/10/17 职场文书
行政专员工作职责
2013/12/22 职场文书
事业单位辞职信范文
2014/01/19 职场文书
高中生操行评语
2014/04/25 职场文书
给朋友的道歉短信
2015/05/12 职场文书
雷锋观后感
2015/06/10 职场文书
成事在人观后感
2015/06/16 职场文书
MySQL 查询速度慢的原因
2021/05/25 MySQL
C站最全Python标准库总结,你想要的都在这里
2021/07/03 Python