【问题标题】:Is it possible to transpile generators with Babel?是否可以使用 Babel 转译生成器?
【发布时间】:2016-09-28 22:40:24
【问题描述】:

我有简单的生成器代码:

function *foo(){}

我有一个像这样的 gulp babel:

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

gulp.task('default', () => {
    return gulp.src('src/app.js')
        .pipe(babel({
            presets: ['es2015']
        }))
        .pipe(gulp.dest('dist'));
});

当你运行 gulp 时,它完成得很好,但是当我转到要添加 dist/app.js 文件的 html 页面时,我在控制台中看到一个错误:

ReferenceError: regeneratorRuntime is not defined

我已经阅读过它,但建议添加一个处理生成器的插件,当我这样做时,我有一个错误,需要未定义...有人可以告诉我如何使 babel 与生成器一起工作一步一步来?

【问题讨论】:

    标签: gulp ecmascript-6 generator babeljs


    【解决方案1】:

    您需要在构建中包含babel-polyfill

    Babel 包含一个 polyfill,其中包含自定义 regenerator runtime 和 core-js。

    安装 babel-polyfill

    $ npm install --save-dev babel-polyfill
    

    确保将其添加到 src/app.js

    // src/app.js
    import "babel-polyfill";
    

    【讨论】:

      猜你喜欢
      • 2020-03-01
      • 2017-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多