Maison > interface Web > js tutoriel > Pourquoi est-ce que j'obtiens « regeneratorRuntime n'est pas défini » lorsque j'utilise Async/Await avec Babel 6 ?

Pourquoi est-ce que j'obtiens « regeneratorRuntime n'est pas défini » lorsque j'utilise Async/Await avec Babel 6 ?

Susan Sarandon
Libérer: 2024-12-08 17:38:12
original
243 Les gens l'ont consulté

Why Am I Getting

"Babel 6 regeneratorRuntime n'est pas défini" expliqué

Lors de l'implémentation de async/await dans Babel 6, l'erreur "regeneratorRuntime n'est pas défini" se pose couramment. Pour résoudre ce problème, il faut en outre installer et inclure babel-polyfill.

Installation des dépendances Babel

Pour utiliser async/await, installez ces dépendances :

npm i -D babel-core babel-polyfill babel-preset-es2015 babel-preset-stage-0 babel-loader
Copier après la connexion

Mise à jour package.json

Ajoutez ce qui suit à "devDependencies" :

"babel-polyfill": "^6.0.16"
Copier après la connexion

Maintenir .babelrc

Conservez les paramètres tels quels :

{
  "presets": [ "es2015", "stage-0" ]
}
Copier après la connexion

Configuration Async/await**

Activez async/await dans votre code :

"use strict";

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

function bar() {
  return "bar";
}
Copier après la connexion

Chargement des packages requis

Dans votre fichier de démarrage , inclure :

require("babel-core/register");
require("babel-polyfill");
Copier après la connexion

Webpack Configuration

Si vous utilisez webpack, assurez-vous que babel-polyfill est la première entrée :

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

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

  module: {
    loaders: [
      { test: /\.jsx?$/, loader: 'babel', }
    ]
  }
};
Copier après la connexion

Test avec Babel

Exécutez des tests avec Babel utilise :

mocha --compilers js:babel-core/register --require babel-polyfill
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal