babel-plugin-transform-regenerator

Explode async and generator functions into a state machine.

MIT 53 个版本
安装
npm install babel-plugin-transform-regenerator
yarn add babel-plugin-transform-regenerator
pnpm add babel-plugin-transform-regenerator
bun add babel-plugin-transform-regenerator
README

babel-plugin-transform-regenerator

Transform async/generator functions with regenerator

Example

In

function* a() {
  yield 1;
}

Out

var _marked = [a].map(regeneratorRuntime.mark);

function a() {
  return regeneratorRuntime.wrap(function a$(_context) {
    while (1) {
      switch (_context.prev = _context.next) {
        case 0:
          _context.next = 2;
          return 1;

        case 2:
        case "end":
          return _context.stop();
      }
    }
  }, _marked[0], this);
}

Installation

npm install --save-dev babel-plugin-transform-regenerator

Usage

Without options:

{
  "plugins": ["transform-regenerator"]
}

With options:

name default value
asyncGenerators true
generators true
async true
{
  "plugins": [
    ["transform-regenerator", {
      "asyncGenerators": false,
      "generators": false,
      "async": false
    }]
  ]
}

Via CLI

babel --plugins transform-regenerator script.js

Via Node API

require("babel-core").transform("code", {
  plugins: ["transform-regenerator"]
});
版本列表
7.0.0-beta.3 2017-10-15
7.0.0-beta.2 2017-09-26
7.0.0-beta.1 2017-09-19
7.0.0-beta.0 2017-09-12
7.0.0-alpha.20 2017-08-30
7.0.0-alpha.19 2017-08-07
7.0.0-alpha.18 2017-08-03
7.0.0-alpha.17 2017-07-26
7.0.0-alpha.16 2017-07-25
7.0.0-alpha.15 2017-07-12
7.0.0-alpha.14 2017-07-12
7.0.0-alpha.12 2017-05-31
7.0.0-alpha.11 2017-05-31
7.0.0-alpha.10 2017-05-25
7.0.0-alpha.9 2017-04-18
7.0.0-alpha.8 2017-04-17
7.0.0-alpha.7 2017-04-05
7.0.0-alpha.3 2017-03-23
7.0.0-alpha.1 2017-03-02
6.26.0 2017-08-16
6.24.1 2017-04-07
6.22.0 2017-01-20
6.21.0 2016-12-16
6.20.0 2016-12-08
6.16.1 2016-09-28
6.16.0 2016-09-28
6.14.0 2016-08-24
6.11.4 2016-07-20
6.9.0 2016-05-17
6.8.0 2016-05-02
6.6.5 2016-03-04
6.6.0 2016-02-29
6.5.2 2016-02-12
6.5.0-1 2016-02-07
6.5.0 2016-02-07
6.4.4 2016-01-14
6.4.3 2016-01-14
6.3.26 2015-12-23
6.3.18 2015-12-14
6.3.13 2015-12-04
6.3.2 2015-12-04
6.2.4 2015-11-25
6.2.0 2015-11-19
6.1.18 2015-11-12
6.1.17 2015-11-12
6.1.4 2015-11-11
6.0.18 2015-11-03
6.0.17 2015-11-02
6.0.14 2015-10-30
6.0.12 2015-10-30
6.0.10 2015-10-29
6.0.8 2015-10-29
6.0.2 2015-10-29