• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

635
Vistas
Error de referencia no detectado: regeneratorRuntime no está definido en React

Recibo el error "Error de referencia no capturado: regeneratorRuntime no está definido". Por favor, ayúdame a encontrar el error y cómo resolverlo.

ingrese la descripción de la imagen aquí

about 3 years ago · Santiago Trujillo
6 Respuestas
Responde la pregunta

0

Gracias. Funciona cuando agrego una declaración de importación: import regeneratorRuntime from "regenerator-runtime"; en el componente estoy usando async/await.

about 3 years ago · Santiago Trujillo Denunciar

0

  • Instalar la dependencia de tiempo de ejecución
 npm i --save-dev @babel/plugin-transform-runtime
  • Agregue el complemento a su archivo .babelrc
 { "plugins": ["@babel/plugin-transform-runtime"] }

Más información: https://babeljs.io/docs/en/babel-plugin-transform-runtime

TLDR;

  • Las funciones asíncronas son abstracción sobre los generadores.
  • Las funciones y generadores asíncronos ahora son compatibles con todos los navegadores principales y en Node10 y versiones posteriores.
  • Si está utilizando un transpilador (como babel) para la compatibilidad con versiones anteriores, necesitará una "capa" adicional que transforme los generadores. Esto implica transformar ES6 en ES5 en tiempo de ejecución ya que su sintaxis no es compatible con versiones anteriores. Ver https://cmichel.io/how-are-generators-transpiled-to-es5
about 3 years ago · Santiago Trujillo Denunciar

0

Me encontré con este problema (usando Babel v7) e incluso después de seguir los consejos e instalar los paquetes relevantes, aún no pude identificar este error. Se comprobaron las siguientes publicaciones de desbordamiento de pila...

  • Babel 6 regeneratorRuntime no está definido
  • Babel 7 - ReferenceError: regeneratorRuntime no está definido

Las siguientes acciones ayudaron:

  1. Vaya a package.json y agregue lo siguiente dentro de 'broma' (captura de pantalla agregada también):

"moduleNameMapper": {
".+\.(css|estilo|menos|sass|scss|png|jpg|ttf|woff|woff2)$": "identity-obj-proxy" }

ingrese la descripción de la imagen aquí

  1. cuando ejecute una prueba, use el siguiente sufijo en el comando...

--setupFilesAfterEnv "./src/setupTests.js"

así que para ejecutar una prueba, será:

$ broma /pathToTest/TestFile.test.js --setupFilesAfterEnv "./src/setupTests.js"

Espero que le sirva a alguien como me ayudó a mí...

about 3 years ago · Santiago Trujillo Denunciar

0

Si es realmente necesario que use la función asíncrona, entonces las soluciones anteriores deberían funcionar. Otra forma de resolver esto es usar promesas regulares, al menos eso fue en mi caso.

about 3 years ago · Santiago Trujillo Denunciar

0

solo agrega

 "browserslist": [ "last 2 Chrome versions" ]

al final de su archivo de proyectos package.json , ¡también vea que sus navegadores plurales no son navegador!

Su archivo al final podría verse así ->

 }, "dependencies": { "prop-types": "^15.8.0", "react": "^17.0.1", "react-dom": "^17.0.1" }, "browserslist": [ "last 2 Chrome versions" ] }

ignore la sección de dependencia en la vista de código anterior, es solo para referencia sobre cómo podría verse su paquete.json.

about 3 years ago · Santiago Trujillo Denunciar

0

2022

Si está trabajando con Babel 7 o una versión posterior, no necesita instalar un complemento adicional (ni @babel/plugin-transform-runtime o @babel/plugin-transform-regenerator u otros complementos ).

Más tarde, debe incluir esta declaración cada vez que use la sintaxis async/await .

import regeneratorRuntime from "regenerator-runtime";

Tal vez si ha configurado un linter en su proyecto, le advertirá que se declara esa declaración, pero su valor nunca se lee, pero creo que es solo un error, porque si lo elimina, el código no funciona.

about 3 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda