首頁 >web前端 >js教程 >如何使用 Async/Await 修復 Babel 6 中的'regeneratorRuntime is not Defined”錯誤?

如何使用 Async/Await 修復 Babel 6 中的'regeneratorRuntime is not Defined”錯誤?

Patricia Arquette
Patricia Arquette原創
2024-12-03 08:46:09322瀏覽

How to Fix the

解決Babel 6 Async/Await 的「regeneratorRuntime is not Defined」錯誤

當嘗試在Babel 6 中實作功能時,開發人員可能會遇到「regeneratorRuntime 未定義」錯誤。這是因為,與 Babel 的更高版本不同,async/await 支援需要 Babel 6 中的 babel-polyfill 套件。

解決方案:

  1. 安裝babel-polyfill:

    npm i -D babel-polyfill
    安裝babel-polyfill:
  2. 安裝babel-polyfill:

    "devDependencies": {
      "babel-polyfill": "^6.0.16",
    }
  3. 更新package.json:


    module.exports = {
      entry: ['babel-polyfill', './test.js'],
      ...
    };
  4. 修改webpack配置(如果適用):
  5. 在webpack.config.js 中,確保babel- polyfill是條目數組中的第一個條目:

    require("babel-core/register");
    require("babel-polyfill");
設定 babel -啟動時的polyfill和babel-core檔:

"use strict";

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

function bar() {
  return "bar";
}

範例程式碼:

範例程式碼:
mocha --compilers js:babel-core/register --require babel-polyfill
範例程式碼:範例碼使用Babel 執行測試:使用Babel執行測試時,請使用以下命令命令:

以上是如何使用 Async/Await 修復 Babel 6 中的'regeneratorRuntime is not Defined”錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn