当前位置: 首页 > 面试题库 >

JavaScript 未定义Babel 6 regeneratorRuntime

常博裕
2023-03-14
问题内容

我正在尝试使用异步,在Babel 6上从头开始,但是我得到的regeneratorRuntime尚未定义。

.babelrc文件

{
    "presets": [ "es2015", "stage-0" ]
}

package.json文件

"devDependencies": {
    "babel-core": "^6.0.20",
    "babel-preset-es2015": "^6.0.15",
    "babel-preset-stage-0": "^6.0.15"
}

.js文件

"use strict";
async function foo() {
  await bar();
}
function bar() { }
exports.default = foo;

正常使用它而不需要异步/等待就可以了。有什么想法我做错了吗?


问题答案:

babel-polyfill是必须的。您还必须安装它才能使异步/等待工作。

npm i -D babel-core babel-polyfill babel-preset-es2015 babel-preset-stage-0 babel-loader

package.json

"devDependencies": {
  "babel-core": "^6.0.20",
  "babel-polyfill": "^6.0.16",
  "babel-preset-es2015": "^6.0.15",
  "babel-preset-stage-0": "^6.0.15"
}

.babelrc

{
  "presets": [ "es2015", "stage-0" ]
}

带有async / await的.js(示例代码)

"use strict";

export default async function foo() {
  var s = await bar();
  console.log(s);
}

function bar() {
  return "bar";
}

在启动文件中

require("babel-core/register");
require("babel-polyfill");

如果您使用的是 webpack
,则需要将其作为entry数组的第一个值放在webpack配置文件中(通常为webpack.config.js),按照@Cemen注释:

module.exports = {
  entry: ['babel-polyfill', './test.js'],

  output: {
    filename: 'bundle.js'       
  },

  module: {
    loaders: [
      { test: /\.jsx?$/, loader: 'babel', }
    ]
  }
};

如果要使用babel运行测试,请使用:

mocha --compilers js:babel-core/register --require babel-polyfill


 类似资料:
  • 问题内容: 注意:根据 ECMAScript5.1,第15.1.1.3节,window.undefined是只读的。 现代浏览器正确地实现了这一点。 例如:Safari 5.1,Firefox 7,Chrome 20等。 Undefined仍可在以下位置更改:Chrome 14,… 原来,问题的原因是 如果“对象”中没有属性“ x”,则返回false。 我通过在两个Facebook函数中用规则相等

  • 导航器的 oscpu 属性在 XP IE7 和 WIN7 IE9 计算机上抛出未定义。其他属性(如等)工作正常。 我想知道Javascript如何识别windows版本(windows Xp、7或8) 有人能帮忙吗? 编辑: 得到答案 返回这样的东西… 4.0(兼容;MSIE 7.0; MSBrowserIE7; Windows NT 5.1;. NET CLR 1.0.3705;. NET CL

  • 我正在尝试使用HTML、CSS和Javascript制作一个简单的哑巴井字游戏。 在下面的播放器移动函数中,由于JSON对象中存在Typeerror,因此无法调用ComputerMove函数。 下面是JSON对象:- 检查功能始终有效,控制台响应如下 调试时,我发现在此错误之后,计算机移动()函数永远不会被调用。所以请帮忙。

  • 我被卡住了一段时间,无法弄清楚如何修复此代码

  • 我试图利用PassKit的现有示例代码来创建一个带有“Zapier运行JavaSript”的JWT令牌。但是Zapier不承认btoa函数。 ReferenceError:未定义btoa 根据这个网站,可以直接调用这个功能。任何想法? 下面是我写的代码。

  • 问题内容: 基本上,我使用javascript通过以下方式从Google Play商店中抓取数据: 一请求 2麦片 3-QueryString 我使用了来自Github的Google Market API,其使用require的方式如下: 但我得到以下 ReferenceError:需求未定义… 因此,我在javascript中没有要求,这对我来说不是新的,还是与众不同。 问题答案: Requir