我试图在Babel 6上从头开始使用async/await,但我得到的regeneratorRuntime没有定义
.LRC文件
{
&“预设”:[“es2015”和“阶段0”]
}
package.json文件
”;devDependencies”是指:{
&“巴别塔核心”:“^6.0.20”;,
&“babel-preset-es2015”:“^6.0.15”;,
&“babel-preset-stage-0”:“^6.0.15”;
}
.js文件
”;使用“严格”;;
异步函数foo(){
等待条();
}
函数栏(){}
exports.default=foo;
正常使用它而不使用async/await就可以了。知道我做错了什么吗
babel polyfill(从babel 7.4起已弃用)是必需的。您还必须安装它才能使异步/等待工作
npm i-D巴别塔堆芯巴别塔聚填充巴别塔-preset-es2015巴别塔-preset-stage-0巴别塔装载机
package.json
“依赖性”:{
“巴别塔核心”:“^6.0.20”,
“巴别塔polyfill”:“^6.0.16”,
“babel-preset-es2015”:“^6.0.15”,
“babel-preset-stage-0”:“^6.0.15”
}
B.法律改革委员会
{
“预设”:[“es2015”,“第0阶段”]
}
.js与async/await(示例代码)
“严格使用”;
导出默认异步函数foo(){
var s=等待条();
控制台日志;
}
功能条(){
返回“bar”;
}
在启动文件中
要求(“巴别塔核心/寄存器”);
要求(“巴别塔polyfill”);
如果您正在使用webpack,则需要将其作为条目数组的第一个值放入您的webpack配置文件(通常为webpack.config.js),如@Cemen注释所示:
module.exports={
条目:['babel-polyfill','./test.js'],
输出:{
文件名:“bundle.js”
},
模块:{
装载机:[
{test:/\.jsx?$/,加载程序:'babel',}
]
}
};
如果要使用babel运行测试,请使用:
摩卡——编译器js:babel core/register——需要babel polyfill