regeneratorRuntime未定义
我在我的项目中使用了browserify + gulp + babel,并且遇到了ES7功能的问题。 这些是我安装的:
这是我的代码:
gulp.task('build', () => {
let buildPath;
let destPath;
buildPath = `./src`;
destPath = `./dist`;
return browserify(`${buildPath}/app.js`)
.transform(babelify, {
presets: ["es2015", "es2016", "stage-0"],
plugins: ["transform-decorators-legacy", "transform-async-to-generator"]
})
.bundle()
.pipe(source('app.js'))
.pipe(buffer())
.pipe(sourcemaps.init({loadMaps: true}))
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest(`${destPath}`));
});
这是我的js代码:
import 'babel-polyfill';
// Async Functions
function wait(t) {
return new Promise((r) => setTimeout(r, t));
}
async function asyncMania() {
console.log('1');
await wait(1000);
console.log('2');
}
asyncMania().then(() => console.log('3'));
当我尝试这个时,得到一个错误:
Uncaught ReferenceError:regeneratorRuntime未定义
使用require而不是导入也不起作用。 大多数问题都使用Webpack,而不是浏览器,其他方法都不适用于我,因此,非常感谢您告诉我该怎么做。
我还有一个问题,就像你看到的,我安装了babel-preset-es2015和babel-preset-es2016,两者都在使用。 如果我删除es2015插件,我还可以使用ES6功能吗? 而且我还包含了babel-preset-stage-0 ,并且我知道这是针对实验性ES7功能的。 实际上, babel-preset-es2016有什么?
我有同样的错误,并通过使用“babel-plugin-transform-runtime”来修复它。 希望这也适合你。
Babel 6 regeneratorRuntime未使用async / await进行定义
链接地址: http://www.djcxy.com/p/32951.html上一篇: regeneratorRuntime is not defined
下一篇: JavaScript ES2015 dynamic inheritance with browserify and babelify