WebStorm中使用ES6的几种方式
本篇总结几种在WebStorm下使用ES6的方式。
首先要选择Javascript的版本。依次点击"File","Settings","Languages & Frameworks","Javascript",在"Javascript Language Version"中选择"ECMAScript6"。
创建一个名称为calc.js的文件。
class Calc{
constructor(){
console.log('Calc constructor');
}
add(a,b){
return a + b;
}
}
var c = new Calc();
console.log(c.add(2, 3));
为了让ES6代码编译为ES5代码,需要用到Google的Traceur编译器。
在网页中插入Traceur编译器
创建一个index.html页面如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body> <script src="https://traceur-compiler.googlecode.com/git/bin/traceur.js"
type="text/javascript"></script>
<script src="https://traceur-compiler.googlecode.com/git/src/bootstrap.js"
type="text/javascript"></script>
<script>
traceur.options.experimental = true;
</script>
<script type="module" src="js/calc.js"></script> </body>
</html>
这种做法不好之处在于需要能访问到https://traceur-compiler.googlecode.com/git/bin/traceur.js这个文件。
使用Traceur命令行
→ 全局安装Traceur, 在控制台中输入:
npm install -g traceur
→ 在项目中引入Traceur相关文件,在控制台输入:
npm install traceur
→ 使用Traceur命令把es6版本的js/calc.js文件编译成es5版本的out/calc5.js文件。在控制台输入:
traceur --out out/calc5.js js/calc.js --exprimental
在index.html中引用如下两个js文件。
<script src="node_modules/traceur/bin/traceur-runtime.js"></script>
<script src="out/calc5.js"></script>
Traceur结合使用Grunt
→ 重新创建一个项目
→ 依次点击"File","Settings","Languages & Frameworks","Javascript",在"Javascript Language Version"中选择"ECMAScript6"。
→ 在项目中引入Traceur相关文件,在控制台输入:
npm install traceur
→ 确保已安装了GRUNT cli(npm intstall -g grunt-cli)。
→ 在项目中安装Grunt。
npm install grunt --save-dev
→ 安装grunt-traceur-latest插件。
npm install grunt-traceur-latest --save-dev
→ 安装grunt-contrib-watch插件。
npm install grunt-contrib-watch --save-dev
→ 在项目根目录下创建build文件夹以及app.js文件。
→ 在项目根目录下创建js文件夹以及app.js文件。
→ 在项目根目录下添加GruntFile.js文件,如下:
module.exports = function(grunt){
grunt.initConfig({
traceur:{
options:{
exprimental: true
},
custom:{
files:{
'build/app.js':"js/**/*.js"
}
}
},
watch:{
files: "js/**/*.js",
tasks: "traceur"
}
});
grunt.loadNpmTasks('grunt-traceur-latest');
grunt.loadNpmTasks('grunt-contrib-watch');
}
以上就是说,每当js文件夹及其子文件夹中的js文件有变化,就会使用traceur这个任务,把js及其子文件夹中的js文件编译到build/app.js文件中。
→ 在控制台运行如下命令:
grunt watch
→ 在js/app.js中编写如下并保存
console.log(`${1+1}`);
→ 在build/app.js中自动生成如下
"use strict";
var __moduleName = (void 0);
console.log(("" + (1 + 1)));
→ 在项目根目录下创建index.html文件并引用build/app.js文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script src="node_modules/traceur/bin/traceur-runtime.js"></script>
<script src="build/app.js"></script>
</body>
</html>
此外,也可以使用www.es6fiddle.net网站编写ES6代码。
WebStorm中使用ES6的几种方式的更多相关文章
- linux内核分析作业4:使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用
系统调用:库函数封装了系统调用,通过库函数和系统调用打交道 用户态:低级别执行状态,代码的掌控范围会受到限制. 内核态:高执行级别,代码可移植性特权指令,访问任意物理地址 为什么划分级别:如果全部特权 ...
- JavaScript学习12 JS中定义对象的几种方式
JavaScript学习12 JS中定义对象的几种方式 JavaScript中没有类的概念,只有对象. 在JavaScript中定义对象可以采用以下几种方式: 1.基于已有对象扩充其属性和方法 2.工 ...
- Shell脚本中执行mysql的几种方式(转)
Shell脚本中执行mysql的几种方式(转) 对于自动化运维,诸如备份恢复之类的,DBA经常需要将SQL语句封装到shell脚本.本文描述了在Linux环境下mysql数据库中,shell脚本下调用 ...
- Java中HashMap遍历的两种方式
Java中HashMap遍历的两种方式 转]Java中HashMap遍历的两种方式原文地址: http://www.javaweb.cc/language/java/032291.shtml 第一种: ...
- JAVA中集合输出的四种方式
在JAVA中Collection输出有四种方式,分别如下: 一) Iterator输出. 该方式适用于Collection的所有子类. public class Hello { public stat ...
- android中解析文件的三种方式
android中解析文件的三种方式 好久没有动手写点东西了,最近在研究android的相关技术,现在就android中解析文件的三种方式做以下总结.其主要有:SAX(Simple API fo ...
- jQuery中开发插件的两种方式
jQuery中开发插件的两种方式(附Demo) 做web开发的基本上都会用到jQuery,jQuery插件开发两种方式:一种是类扩展的方式开发插件,jQuery添加新的全局函数(jQuery的全局函数 ...
- Struts中的数据处理的三种方式
Struts中的数据处理的三种方式: public class DataAction extends ActionSupport{ @Override public String execute() ...
- JavaScript学习12 JS中定义对象的几种方式【转】
avaScript学习12 JS中定义对象的几种方式 转自: http://www.cnblogs.com/mengdd/p/3697255.html JavaScript中没有类的概念,只有对象. ...
随机推荐
- 数组用console.log输出
输出的时候,如果前面有字符串,那么输出的就是整个字符串
- VS2010上连接SQLite数据库
VS2010连接SQLite数据库 Visual studio 2010及以上版本,连接SQLite数据库 1.在Sqlite开发站点下载SQLite的.exe安装包 Ctrl+F搜索这条语句:Thi ...
- 网络协议之TLS
前言 由于在TCP.UDP等方式传输数据时,数据包有可能被其他人截获,并解析出信息,这就给信息安全带来了很大的挑战.最初的SSL协议被网景公司提出,它不会影响上层协议(如HTTP.电子邮件等),但可以 ...
- jquery 鼠标事件汇总
鼠标事件是指用户在移动鼠标光标或者点击任意鼠标键时触发的事件,jQuery中封装了基本上所有的鼠标事件包括点击,双击,移动等鼠标事件,下面我们就来看下这些事件的语法和用法 鼠标事件是在用户移动鼠标 ...
- 2019寒假练题计划——LibreOJ刷题计划 &《信息学奥赛一本通》提高版题目
目录 2019.1.27 #10082. 「一本通 3.3 例 1」Word Rings 题意 思路 #10083. 「一本通 3.3 例 2」双调路径 题意 思路 #10084. 「一本通 3.3 ...
- 使用VSCode创建.NET Core 项目,添加类库间引用
注:网络上搜索到的关于VsCode创建调试.Net Core 项目的文章都比较老旧,不能完全参考使用,根据网络文章.微软官方文档的指导下,学习并整理此文档,但也大体和文档学习路线相似,主要为记录学习过 ...
- 《JavaScript 高级程序设计》第一章:简介
JavaScript 历史 JavaScript的诞生的主要是当时的 netspace 公司谋求为自己的浏览器 Navigator 添加一种脚本语言,以便在本地客户端进行一些行为操作,而这一功能的需求 ...
- Eclipse 的一些调试技巧(转)
原文:http://blog.csdn.net/manymore13/article/details/8972602 1.条件断点 如果你不知道如何添加断点,只需点击左边面板(行号前面)断点即被创建. ...
- DFT,DTFT,DFS,FFT区别
学习了数字信号处理之后,被里面的几个名词搞的晕头转向,比如DFT,DTFT,DFS,FFT,FT,FS等,FT和FS属于信号与系统课程的内容,是对连续时间信号的处理,这里就不过多讨论,只解释一 ...
- 001.Rsync简介及使用
一 基础知识 1.1 简介 Rsync是Linux系统中的数据镜像备份工具,通过rsync可以将本地系统数据通过网络备份到任何远程主机上.rysnc不仅仅能对不同位置的文件和目录进行同步,还可以差异计 ...