ホームページ >ウェブフロントエンド >jsチュートリアル >Babel 6 で async/await を使用すると「regeneratorRuntime が定義されていません」というメッセージが表示されるのはなぜですか?どうすれば修正できますか?

Babel 6 で async/await を使用すると「regeneratorRuntime が定義されていません」というメッセージが表示されるのはなぜですか?どうすれば修正できますか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-03 04:50:13140ブラウズ

Why is

「Babel 6 regeneratorRuntime が定義されていません」

質問: Babel 6 で async/await を使用する場合、 「regeneratorRuntime が定義されていません」というエラー メッセージが表示されます。これはどのように修正できますか?

回答:

この問題を解決するには、非同期に必要なランタイム サポートを提供する babel-polyfill パッケージを含めるように Babel を構成する必要があります。 /await.

ステップ 1: インストールが必要ですパッケージ

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

ステップ 2: 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"
}

ステップ 3: Babel を構成します ( .babelrc)

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

ステップ 4: Polyfill をアクティブにする

スタートアップ ファイル内:

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

Webpack ユーザー:

場所Webpack 設定のエントリ配列の最初の値として:

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

テスター向け:

Babel でテストを実行:

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

これらの手順を完了すると、Babel には async/await に必要なランタイム サポートが組み込まれ、「regeneratorRuntime が正しくない」という問題が解消されます。定義済み」エラー。

以上がBabel 6 で async/await を使用すると「regeneratorRuntime が定義されていません」というメッセージが表示されるのはなぜですか?どうすれば修正できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。