JS
来源:互联网 发布:创世纪 知乎 编辑:程序博客网 时间:2024/06/05 10:36
Demo地址在这里
首先,创建package.json
和.babelrc
:
pageage.json:{ "name": "BabelDemo", "version": "0.0.1", "devDependencies": { "babel-cli": "^6.24.1" }}
.babelrc:{ "presets": ["env"]}
使用命令添加babel-cli & babel-preset-env
npm install --save-dev babel-clinpm install --save-dev babel-preset-envnpm install --save-dev babel-preset-es2015
至于babel-preset-env
与babel-preset-es2015
的区别请看这里
其次,创建测试JS文件
'use strict';function* fibs() {// Generator Function let a = 0; let b = 1; while (true) { yield a; b = a + b; a = b - a; }}let [first, second, third, fourth, fifth, sixth] = fibs();console.log(first, second, third, fourth, fifth, sixth);
然后,添加File Watcher
在WebStrom -> Preference -> Tools -> File Watchers
界面中点击+
号,选择并使用默认值。
Note:
Watcher Settings
中Program
选项,请选择当前工程目录下./node_modules/.bin/babel
E.G:
/Users/UserName/YourProjectRoot/node_modules/.bin/babel
这步完成后就可以看到dist
目录下中有一个经过转换后的main.js
文件了
Note:别忘记设置
WebStrom -> Preference -> Language&Frameworks -> JavaScript -> Version = ECMScript6
最后,如何将指定目录下的文件输出到指定目录下呢
作为略微有些强迫症的Coder,我肯定是希望我的Webstrom工程目录是清晰的,如下所示:
ProjectRoot | -- source // 用于存放所有的html/js(ES6)/sass等文件 | -- src // js(ES6)目录 -- sass -- img -- target // 用于存放所有自动编译后的html/js(ES5)/css等文件 | -- src // js(ES5)目录 -- css -- img
想要做到这样,需要修改Babel的自动编译配置选项。
WebStrom -> Preference -> Tools -> File Watchers -> Babel Setting
一般来说,默认配置如下所示:
想要自动编译到指定目录有2个步骤:
步骤一:修改Watched Files下的Scope,它代表的是自动编译的范围。
1. 选择Scope右侧的下拉框中的Custom Scopes选项,自定义Scope为file[BabelDemo]:source/*/*
注意,当写的时候右侧的Scope contains 2 of total 20 表示,当前的表示范围内有多少文件被找到了。
2. 修改Watcher Settings下的Arguments项,直接指定输入输出目录为
被使用的:source --out-dir dist --presets env不使用的:// $FilePathRelativeToProjectRoot$ --out-dir dist --source-maps --presets env
经过这两步后,就大功告成了。
- js
- js
- JS
- JS
- JS
- js
- js
- js
- js
- js
- JS
- js
- JS
- js
- js
- js
- js
- JS
- 逻辑回归,non-numeric argument to binary operator
- Ubuntu(Linux)下Python升级及pip的处理
- Python安装zlib模块
- windows系统禁止屏幕旋转快捷键
- bzoj 1061: [Noi2008]志愿者招募 单纯形
- JS
- 关于‘Starting Tomcat v7.0 Server at localhost’ has encountered a problem问题
- 题解:Queue Reconstruction by Height
- BeanFactory和ApplicationContext容器的bean后置处理器方式的不同
- 设计模式三之备忘录模式
- String
- 用grunt搭建自动化的web前端开发环境实战教程(详细步骤)
- spring配置文件报错
- 今天做到一道面试题:JVM的工作原理