webstorm + babel
网上有很多关于如何设置babel的。我学习着设置,但总差那么几步,没能满足我的需求。
我使用的是webStorm2017.1版本。
babel安装准备
使用webStorm自带的filewatcher中的babel自动编译前,需要安装一些babel库
全局安装babel-cli
npm install -g babel-cli
网上有些教程让全局安装babel,实际上新的babel已经集成在babel-cli里面了。 另外.
网上有部分教程是项目安装babel-cli的。 npm install babel-cli --save-dev 项目安装也是可以的,不过在filewatcher的babel设置里,要在program里选择项目里的babel地址。
安装其他babel库
npm install --save-dev babel-preset-env
网上很多教程要求安装babel-preset-es2015,在实际编译时,使用webStorm的默认设置,编译是不成功的。 env这个包,会根据es6的运行环境去编译js,而无序指定哪个具体的es版本。
.babelrc
在项目根目录下,也就是package.json同目录下,创建.babelrc文件。【该文件非必须】
很多网上教程推荐里面内容为:{"presets":["es2015"]} 。这里的内容,需要根据自己的需要设置。webstorm的默认设置里,其实是不需要网上的这个推荐内容了。
通过.babelrc,可以实现更多功能。
webstorm开启es6
file - setting - languages & frameworks - Javascript
在右侧的框中,选择ECMAScript6
File Watcher 中babel设置
webstorm 里的路径: file - setting - tools - File Watcher,
从图中右侧的+号里打开新窗口,选中babel,在图中间就会出现Bebel了。

双击上图的Babel,会进入babel设置界面。

在这个界面里,需要设置的地方有三个,Program,Arguments, Output paths to refresh
这里的设置很重要,网上的教程,基本没有对这三个进行详细介绍的。
Program 如果是全局安装babel-cli的,这里默认就好了。如果是项目安装的,就要右边的...到项目的node_modules文件夹中,找到.bin文件夹下面的babel文件,点ok就可以了
Arguments 默认为: $FilePathRelativeToProjectRoot$ --out-dir dist --source-maps --presets env
Output paths to refresh 默认为:dist\$FileDirRelativeToProjectRoot$\$FileNameWithoutExtension$.js:dist\$FileDirRelativeToProjectRoot$\$FileNameWithoutExtension$.js.map
运行编译后的结果是这样的。

dist目录不一定是我们想要的目录。我们想把编译后的文件都放在js目录下,于是就将Arguments里的dist改成了js。 结果编译后的文件却像下图这样,不断嵌套。

要解决这个不断嵌套的问题,就需要把Output paths to refresh 中的dist,同样该为js,就不会出现这种嵌套编译了。
我的目标要编译成这种结构的js

我的设置为: 这样就可以让编译后的文件和原文件在同一个文件夹下
Arguments:
$FilePathRelativeToProjectRoot$ --out-file $FileDir$\$FileNameWithoutExtension$-compile.js --source-maps --presets env
Output paths to refresh:
$FileDir$\$FileNameWithoutExtension$-compile.js:$FileDir$\$FileNameWithoutExtension$-compile.js.map
webstorm + babel的更多相关文章
- WebStorm ES6 语法支持设置&babel使用及自动编译
一.语法支持设置 Preferences > Languages & Frameworks > JavaScript 二.Babel安装 1.全局安装 npm install -g ...
- 【02】webstorm配置babel转换器+截图(by魔芋)
[02]webstorm配置babel转换器+截图(by魔芋) [02]魔芋的安装过程 01,配置babel. 02,用webstorm.注意webstorm的版本号. 03,使用 ...
- 解决webstorm安装babel卡死问题
2017.07.16 现在大家可以直接使用yarn的方式安装包,可以解决babel目录过长导致webstorm卡死的问题. yarn的安装不会执行组件命令就不会导致node_modules下面继续嵌套 ...
- Webstorm上面通过babel将es6转化为es5
1.首先创建一个新的文件夹(名为do);2.然后再根目录下面新建一个package.json,只需要写明两个属性即name和version,这个没有必须要和下面我写的一致,可以自行定义. { &quo ...
- webstorm 创建es6项目 babel 转 es5
node 安装 webstorm 安装 略过 npm install -y //生成package.json npm install babel-cli -g //全局安装babel-cli npm ...
- 在webstrorm中配置好es6 babel【更新:在webstorm中配置.vue和.vue文件中支持es6】
第一步:全局安装babel-cli npm install -g babel-cli 第二步,新建一个空项目,在 WebStorm 中的当前项目中打开 Terminal,进入项目的根目录下, 安装 E ...
- webstorm设置babel,使用es6
原文链接:https://blog.csdn.net/peade/article/details/76522177 网上有很多关于如何设置babel的.我学习着设置,但总差那么几步,没能满足我的需求. ...
- webstorm配置babel自动转译es6的方法
1.npm安装babel npm install -g babel-cli 2.npm安装Babel的preset npm install --save-dev babel-preset-es2015 ...
- webstorm 配置node babel编译es6
随机推荐
- 【ACM】hdu_zs2_1006_Problem F_201308031058
Problem F Time Limit : 3000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other)Total Subm ...
- EF--复杂类型
介绍EF复杂类型的文章 我理解的复杂类型就是简化了编码的操作,实际上在数据库中还是按照约定生成相应的类似"类名_类名"的表结构 public class CompanyAddres ...
- 51nod——T1103 N的倍数
题目来源: Ural 1302 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 收藏 关注 一个长度为N的数组A,从A中选出若干个数,使得这些数的和是N的倍数. ...
- Object对象具体解释(一)之toString
Object作为Java中超然的存在.当中定义了一切对象都共同拥有的方法. 特点: 1. java.lang包在使用的时候无需显示导入.编译时由编译器自己主动导入. 2. Object类是类层次结构的 ...
- pl/sql developer 布局结构保存
pl/sql developer 布局结构保存 调整了工具栏,调整了窗体框位置,点击 窗口->保存版面 就可以保留当前的调整的结果,不用一次一次调整了: 也可以在工具 -> 首选项 -&g ...
- 【待解决】An internal error occurred during: "Launching baiduTest1". java.lang.NullPointerException
编写的一个Java类,以junit运行可以正常执行,以testNG执行就报如下错误 解决方法:
- <vim实用技巧>学习笔记
第三章插入模式 1.插入模式下的删除 2.返回普通模式 3.复制 yt, //复制当前光标到逗号(,)之前的内容 第四章 可视模式 1 ...
- redis安装及连接(入门)
安装 环境:本地win10,虚拟机里ubuntu, 在ubuntu安装redis服务,本地java连接. 本教程使用的最新文档版本为 4.0.9,下载并安装: 安装步骤: 1,进入ubuntu合适目录 ...
- CharSequence源码分析
CharSequence是一个接口,表示一个char值的可读序列,此接口为多种char序列提供统一的.只读的通道.既然是接口,就不能通过new来进行赋值,只能通过以下方式赋值: CharSequenc ...
- 基于mkdocs-material搭建个人静态博客
基于mkdocs-material搭建个人纯静态博客,没有php,没有mysql 如果你只是想安安静静的放一些技术文章,发布到个人站点或github-pages,mkdocs-material很适合你 ...