各大浏览器厂商对es2015功能支持不完全,等到全部支持会等很长时间,如果现在使用es2015,可以选择babel一个将ES6/ES7写的代码转换为ES5代码的编译器.

我们选择使用gulp自动化编译生成es5代码.

假设你已经安装过了nodejs.

配置开发环境:

1. 建立工程目录:

$mkdir test && cd test

2. 新建工程配置文件package.json

$npm init

3. 安装gulp工具

$npm install --save-dev gulp gulp-babel gulp-concat gulp-sourcemaps babel-preset-es2015

4. 新建gulp配置文件

$vim gulpfile.js

写入代码gulpfile.js:

const gulp = require("gulp");

const sourcemaps = require("gulp-sourcemaps");

const babel = require("gulp-babel");

const concat = require("gulp-concat");

gulp.task('default', () =>

    gulp.src('src/**/*.js')

        .pipe(babel({

            presets: 'es2015'

        }))

        .pipe(gulp.dest('dist'))

);

//生成sourcemaps

gulp.task('all', () =>

    gulp.src('src/**/*.js')

        .pipe(sourcemaps.init())

        .pipe(babel({

            presets: 'es2015'

        }))

        .pipe(concat('all.js'))

        .pipe(sourcemaps.write('.'))

        .pipe(gulp.dest('dist'))

);

5. 测试是否配置成功

mkdir src && cd src && vim app.js

写入代码:

function f() { 

    let x;

    {

      // okay, block scoped name

      const x = "sneaky";

      // error, const

      //x = "foo";

console.log(x);

    }

    // okay, declared with `let`

    x = "bar";

    // error, already declared in block

    //let x = "inner";

    console.log(x);

}

f();

6.执行

$gulp

会自动生成dest目录,包含app.js文件,是转化过的js.恭喜你已经学会!

gulp-babel使用的更多相关文章

  1. gulp+Babel 搭建ES6环境

    Gulp是什么? Gulp是一个工作流的构建系统,开发者可以使用它在网站开发过程中自动执行常见任务.Gulp是基于Node.js构建的,因此Gulp源文件和你用来定义任务的Gulp文件都被写进了Jav ...

  2. 让浏览器兼容ES6语法(gulp+babel)

    使用gulp+babel搭建ES6环境 前言 我们查阅资料可以知道ECMAScript 2015(简称ES6)已经于2015年发布,由于用户使用的浏览器版本在安装的时候可能早于ES6的发布,而到了今天 ...

  3. gulp+babel 实时转es6

    1.安装gulp  npm install gulp 2.得到package.json文件  npm init 2.全局安装Babel. npm install -g babel-cli    npm ...

  4. Gulp Babel AMD转换例子

    1.gulpfile.js var gulp = require('gulp'); const babel = require('gulp-babel'); gulp.task('default', ...

  5. ES6转ES5:Gulp+Babel

    目标: ES6代码转成ES5 对转换后的ES5进行压缩 以上步骤自动监控执行 步骤: 1.安装插件 在命令行中定位到项目根目录 安装全局 Gulp npm install -g gulp 安装项目中使 ...

  6. gulp+babel面向未来变成

    1.需要本地安装node; 2.安装gulp: 3.在项目根目录启动node; 安装babel组件: npm install --save-dev babel-core npm install --s ...

  7. ES6 初体验 —— gulp+Babel 搭建ES6环境

    ES6已经火了好久了,我却一直没有在项目中尝试过使用ES6写代码,只是写过几个Demo,在大型项目中使用ES6这件事,我一直不太敢做.最近公司要求做一个小的H5活动专题,我想不如就在这个小项目中使用E ...

  8. gulp babel 配置不报错也没有输出结果的原因

    环境: "@babel/core": "^7.1.6", "gulp-babel": "^8.0.0", "@ ...

  9. gulp 安装笔记

    1.全局安装cnpm(淘宝的npm国内镜像),gulp,rimraf(卸载用插件)npm install -g cnpm --registry=https://registry.npm.taobao. ...

  10. 使用babel编译es6

    起因:开发中慢慢的学习使用es6,但是JavaScript需要浏览器来解析,而不是所有浏览器都支持es6,所以为了兼容es6,需要第三方工具进行编译es6. 工具:node,gulp,gulp-bab ...

随机推荐

  1. vector

    .vector是一个能够存放任意类型的动态数组,能够增加和压缩数据. .vector容器最擅长的工作是: 利用位置索引存储容器中的单个元素. 以任何顺序迭代容器中的元素. 在容器的末尾追加和删除元素. ...

  2. 在WinCC中通过VBS操作SQL Server2005

    在项目中需要在一定条件满足时,保存一些数据到数据库中,并可根据条件查询.考虑到WinCC6.2以后采用的就是SQL Server2005数据库,所以直接利用该数据库即可,通过SQL Server Ma ...

  3. PLSQL note

    sql%count 最近一次sql执行的件数SUBSTR(string , int i) // i番目から最後までの文字列を切り取るSUBSTR(string , int i, int j) // i ...

  4. CString转换为string

    string CStringToString(CString strMFC) { CStringA strA; strA = strMFC.GetBuffer(); strMFC.ReleaseBuf ...

  5. Sqlserver 2008清除数据库日志

    USE [master] GO ALTER DATABASE DBNAME SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE DBNAME SET ...

  6. java中readLine()方法为什么有的行读不到?

    今天在使用java对IO操作时,readLine()输出到控制台的行少了很多.后来发现readLine()实际上是一次读取一行.如果我们不话readLine()读取的行内容赋给一个字符串的话,每直接调 ...

  7. iOS 通信常用小功能

    打电话 a.最简单最直接的方式:直接跳到拨号界面 NSURL *url = [NSURL URLWithString:@"tel://10010"]; [[UIApplicatio ...

  8. javaScript事件(一)事件流

    一.事件 事件是用户或浏览器自身执行的某种动作,如click,load和mouseover都是事件的名字.事件是javaScript和DOM之间的桥梁.你若触发,我便执行——事件发生,调用它的处理函数 ...

  9. DataGridView回车焦点横向移动

    protected override bool ProcessCmdKey(ref Message msg, Keys keyData)        {            if (keyData ...

  10. Jetpack 由 WordPress.com 出品

    官网:https://jetpack.com/ Jetpack 由 WordPress.com 出品. Jetpack 通过为您提供访客统计数据和安全服务.加速图像传输以及帮您获得更多浏览量,可以简化 ...