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

 更新时间:2017年09月08日 08:39:33   作者:鬼脸  
下面小编就为大家带来一篇WebStorm ES6 语法支持设置&babel使用及自动编译(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

一、语法支持设置

Preferences > Languages & Frameworks > JavaScript

二、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代码一致。

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

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。

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

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使用及自动编译(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • document.documentElement和document.body区别介绍

    document.documentElement和document.body区别介绍

    body是DOM对象里的body子节点,即body标签,documentElement 是整个节点树的根节点root,详细介绍请看本文,感兴趣的朋友可以参考下
    2013-09-09
  • JavaScript轮播图简单制作方法

    JavaScript轮播图简单制作方法

    这篇文章主要为大家详细介绍了JavaScript轮播图简单的制作方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02
  • JavaScript利用crypto模块实现加解密

    JavaScript利用crypto模块实现加解密

    crypto模块提供了加密功能,包含对 OpenSSL 的哈希、HMAC、加密、解密、签名、以及验证功能的一整套封装。本文将利用它实现加解密算法,需要的可以参考一下
    2023-02-02
  • javascript实现简易计算器的代码

    javascript实现简易计算器的代码

    下面小编就为大家带来一篇javascript实现简易计算器的代码小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-05-05
  • 一个XML格式数据转换为图表的例子

    一个XML格式数据转换为图表的例子

    这个例子使用的是转换为VML的语法,换成其他如SVG的语法,就可以转换成为SVG图形,单元数量可以任意加。
    2010-02-02
  • JavaScript实现动态表单生成

    JavaScript实现动态表单生成

    这篇文章主要来和大家一起深入探讨如何使用JavaScript实现一个动态表单生成器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下
    2024-01-01
  • JavaScript动态创建二维数组的方法示例

    JavaScript动态创建二维数组的方法示例

    这篇文章主要介绍了JavaScript动态创建二维数组的方法,结合实例形式分析了javascript动态创建二维数组的相关操作技巧与注意事项,需要的朋友可以参考下
    2019-02-02
  • 微信小程序template模版的使用方法

    微信小程序template模版的使用方法

    这篇文章主要给大家介绍了关于微信小程序template模版的使用方法,文中通过示例代码介绍的非常详细,对大家学习或者使用微信小程序具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-04-04
  • 详解小程序设置缓存并且不覆盖原有数据

    详解小程序设置缓存并且不覆盖原有数据

    这篇文章主要介绍了小程序设置缓存并且不覆盖原有数据,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • 一个关于JS操作符in问题引发的探究

    一个关于JS操作符in问题引发的探究

    这篇文章主要给大家介绍了一个JS操作符in问题引发的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04

最新评论