@babel/plugin-transform-runtime 到底是什么?

很多初学者在刚接触 babel 的时候,通常会看到这样一个报错信息:

ReferenceError: regeneratorRuntime is not defined

这个报错表面上是由于 async function 语法被 babel 转译之后的代码使用了 regeneratorRuntime 这个变量,但是这个变量在最终的代码里未定义造成的报错。

babel 在转译的时候,会将源代码分成 syntax 和 api 两部分来处理:

  • syntax:类似于展开对象、optional chain、let、const 等语法
  • api:类似于 [1,2,3].includes 等函数、方法
  1. 首先写一个最简单的 babel 配置文件:
{
  "presets":[["@babel/preset-env"]]
}

转译结果如下:

@babel/plugin-transform-runtime 到底是什么?_第1张图片

                                                                                                                                                                                 

你可能感兴趣的:(webpack,webpack)