Heim >Web-Frontend >js-Tutorial >Wie behebt man den Fehler „regeneratorRuntime ist nicht definiert' in Babel 6 mit Async/Await?

Wie behebt man den Fehler „regeneratorRuntime ist nicht definiert' in Babel 6 mit Async/Await?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-03 08:46:09325Durchsuche

How to Fix the

Behebung des Fehlers „regeneratorRuntime ist nicht definiert“ mit Babel 6 Async/Await

Beim Versuch, die Async/Await-Funktionalität in Babel 6 zu implementieren, Entwickler können auf den Fehler „regeneratorRuntime ist nicht definiert“ stoßen. Dies liegt daran, dass die Async/Await-Unterstützung im Gegensatz zu späteren Versionen von Babel in Babel 6 das Paket babel-polyfill erfordert.

Lösung:

  1. Installieren babel-polyfill:

    npm i -D babel-polyfill
  2. Paket.json aktualisieren:

    "devDependencies": {
      "babel-polyfill": "^6.0.16",
    }
  3. Webpack-Konfiguration ändern (falls zutreffend):
    Stellen Sie in webpack.config.js sicher, dass babel-polyfill ist der erste Eintrag im Eintragsarray:

    module.exports = {
      entry: ['babel-polyfill', './test.js'],
      ...
    };
  4. Babel-polyfill und babel-core in der Startdatei einrichten:

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

Beispiel Code:

"use strict";

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

function bar() {
  return "bar";
}

Tests mit Babel ausführen:

Wenn Sie Tests mit Babel ausführen, verwenden Sie den folgenden Befehl:

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

Das obige ist der detaillierte Inhalt vonWie behebt man den Fehler „regeneratorRuntime ist nicht definiert' in Babel 6 mit Async/Await?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn