webstorm ES6 轉 ES5

一句話總結:用WebStorm自帶的File Watcher功能+Babel實現自動轉換ECMAScript 6代碼爲ES5代碼node


1.npm

  新建一個Empty Project,而後在src目錄下新建了一個main.js;json

 // 這一步不是必須的 只是剛上手的話 從空項目開始本身配置會少不少干擾babel

2. ide

  進入設置,把JavaScript language version改爲ECMAScript 6;函數

3. spa

  再Then..寫一段ES6代碼code

'use strict';
// node直接運行ES6代碼時,如使用了ES6的一些關鍵字,好比let,就須要嚴格模式,不然會報錯
// 這是沒有嚴格模式時候的錯誤提示
// SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode


function* fibs() {// Generator Function
    let a = 0;
    let b = 1;
    while (true) {
        yield a;
        // [a, b] = [b, a + b];
        b = a + b;
        a = b - a;
    }
}
let [first, second, third, fourth, fifth, sixth] = fibs();
console.log(first, second, third, fourth, fifth, sixth);

4.orm

  如今IDE會出現一個File watcher提示條blog

  先別點Add watcher!咱們要先去裝babel~

  • 首先在根目錄新建一個package.json
    {
      "name": "test-project",
      "version": "1.0.0"
    }
  • 而後打開IDE的Terminal,安裝babel-cli
    npm install --save-dev babel-cli

    Good! 如今能夠去點Add watcher啦,點完以後會彈出一個框,其中大部分設置IDE都幫你搞定了

 

  • 下面第三行,Program那一項,填(其實選的是 babel.cmd)
    $ProjectFileDir$/node_modules/.bin/babel
    而後點OK,這個時候你就會發現左邊多出來一個main-compiled.js文件啦

 

  • 可是還沒搞定!如今只是搞定了自動轉換的功能,系統默認把ES6 compile成了ES6..(你應該會發現compile出來的東西跟原來的同樣..Generator函數並無被轉換成ES5的格式)

    因此咱們須要安裝Babel的preset以正確識別ES6代碼;

npm install --save-dev babel-preset-es2015
  • 在根目錄下新建一個.babelrc文件(就是babel在當前項目的配置文件),寫上
    {
      "presets": [
        "es2015"
      ]
    }

  

  OK搞定!保存再回去看一下main-compiled.js 應該就變成這個樣子啦,如今你在main.js裏直接寫ES6代碼,IDE都會自動compile成ES5的代碼在這裏啦~

相關文章
相關標籤/搜索