• 利用gulp+babel转es6


    目录
    1. 参考资料
    2. 前言
    3. 知识储备
    4. 搭建步骤
    5. 小试身手
    参考资料
    1. gulp
    2. node.js中文网
    3. Babel
    4. gulp入门教程
    5. gulp中文网
    前言

    最近在学习es6过程中发现,虽然es6出来已经有一段时间了,但是各大浏览器并不是完全支持(chrome,firefox支持大部分,IE不支持),作为一个前端爱好者,浏览器兼容性永远是优先考虑的,所以呢,内事不决问度娘嘛!搜索之后发现有两种解决办法,第一种呢?用WebStorm自带的File Watcher功能+Babel实现自动转换ECMAScript 6代码为ES5代码(不推荐,因为很卡),第二种考虑gulp,利用gulp+babel转es6,心情很激动,遂写下心得,权当做个见证!

    知识储备
    • ES6

    ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了。它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。

    标准的制定者有计划,以后每年发布一次标准,使用年份作为版本。因为 ES6 的第一个版本是在 2015 年发布的,所以又称ECMAScript 2015(简称 ES2015)。

    2016 年 6 月,小幅修订的《ECMAScript 2016 标准》(简称 ES2016)如期发布。由于变动非常小(只新增了数组实例的includes方法和指数运算符),因此 ES2016 与 ES2015 基本上是同一个标准,都被看作是 ES6。根据计划,2017 年 6 月将发布 ES2017。

    • gulp

    gulp.js 是一种基于流的,代码优于配置的新一代构建工具。具体可见gulp

    • node.js/npm

    Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 
    Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。

    Node.js 的包管理器 npm,是全球最大的开源库生态系统。

    具体可见node.js中文网

    • Babel

    Babel是一个广泛使用的转码器,可以将ES6代码转为ES5代码,从而在现有环境执行。具体可见Babel

    搭建步骤
    • 安装node.js/npm

      进入node.js中文网,点击导航栏的下载,根据系统对应下载即可(npm会随同node.js一同下载)。

      下载成功后,以window系统为例:win键+r输入cmd回车,调出命令行,执行如下命令:

      node -v 下载成功后会出现nodejs版本号

      npm -v 下载成功后会出现npm版本号

    • 了解常用npm命令 npm使用手册

    • 安装cnpm

      安装命令: npm install cnpm -g --registry=https://registry.npm.taobao.org

      下载成功后可以执行cnpm -v查看版本

      npm安装插件是从国外服务器下载,受网络的影响,经常会产生下载缓慢或异常的问题。cnpm的出现就很好的解决了这个问题,cnpm是一个完整的npmjs.org的镜像,可以以此代替官方版本,同步频率为10分钟一次(cnmp命令与npm一致,只需将npm替换为cnpm)。cnmp官网

    • 全局安装gulp

      安装命令: cnpm install gulp -g

      查看是否正确安装:gulp -v

    • 新建项目(以我的项目为例)

      在桌面新建了一个名为test的项目

      • 使用cmd进入命令行,cd到test项目(cd Desktop est ),执行gulp命令,会出现
      Local gulp not found in ~Desktop	est
      Try running:npm install gulp
      
      
      • 使用IDE打开(本人是webstorm)
    • cmd执行cnpm init命令配置package.json文件

      如果你和我一样都是小白的话,一路enter就可以了! 结束时会提示你Is this ok? 输入yes即可,然后回到IDE中,你会发现项目中已经生成了package.json文件。(package.json是基于nodejs项目必不可少的配置文件,它是存放在项目根目录的普通json文件。具体看这里)

    • 本地安装gulp,执行如下命令

      • cnpm install --save-dev

      • cnpm install gulp --save-dev

      cmd到test目录下执行gulp命令,会出现

    • 在项目根目录创建一个名为gulpfile.js的文件,根据gulp中文网的提示,书写如下代码

    var gulp = require('gulp');
    
    gulp.task('default', function() {
    // 将你的默认的任务代码放在这
    console.log('ok');  //实验代码
    });
    
    • cmd到test目录下执行gulp命令,会出现

      此时标志着gulp安装完成

    • 安装gulp-babel插件, 回到cmd到test目录下,执行:

      cnpm install --save-dev gulp-babel babel-preset-es2015

    • 回到IDE,重置gulpfile.js文件,书写如下代码

    const gulp = require('gulp');
    const babel = require('gulp-babel');
     
    gulp.task('default', () => {
        return gulp.src('es6/*.js')
            .pipe(babel({
                presets: ['es2015']
            }))
            .pipe(gulp.dest('build'));
    });
    

    至此,gulp+Babel转es6的环境已经搭建完毕。

    小试身手
    • 更改webStorm编辑器的js书写环境

    ​ File => Setting => languages & Frameworks => javascript =>

    • 新建es6文件夹,在es6文件夹下创建es6标准下的test.js文件,书写如下代码
    let [a,b] = [1,2];
    console.log(a,b);
    
    • cmd到test目录下执行gulp命令

    • 回到IDE,test文件生成了一个叫build的文件夹并且里面有一个let.js的文件,build/let.js这就是我们转成的es5标准的js文件。

    回到目录

    博客搬家:三小山的个人博客

    如有不对,欢迎指正,谢谢
  • 相关阅读:
    【2021-03-03】人生十三信条
    【2021-03-02】勤奋和努力是积极乐观的自然导向
    【2021-03-01】解铃还需系铃人
    【2021-02-28】人生十三信条
    【2021-02-27】人生十三信条
    【2021-02-26】人生十三信条
    【2021-02-25】“活到老,做到老”的观念趋势
    【一句日历】2021年3月
    【2021-02-24】理想化中的积极进取精神
    机器人走方格
  • 原文地址:https://www.cnblogs.com/sanxiaoshan/p/6850342.html
Copyright © 2020-2023  润新知