Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

147
Vistas
Función asíncrona de javascript, la persona que llama no espera. manifiesto V3

NO borre mi pregunta. Revisé la web, las documentaciones, no sé por qué sucede esto y eliminar la pregunta NO ayuda. No hay otras preguntas similares a la mía.

Aquí va. A continuación se muestra cómo creo que debería suceder. Pero incluso con toda la sintaxis de async away promis que coloco allí, no sucede. Cuando se llama a la función asíncrona, nadie espera a que termine. No sé qué más hacer, excepto conectar en cadena todo bajo la función asíncrona que estoy tratando de evitar. Ayuda por favor.

Intenté usar tabs= await getcurrenttab() , pero eso provoca un error que dice que solo funciona en funciones asíncronas. Que el oyente no es.

ingrese la descripción de la imagen aquí

manifiesto.json

 { "manifest_version": 3, "name": "DHL Helper", "description": "This helper helps DHL's quality of life, improves mental health.", "version": "1.0", "action": { "default_icon": "icon.png", "default_popup": "popup.html" }, "content_scripts": [{ "matches":["*://servicenow.*.com/*", "http://*/*", "https://*/*"], "js": ["content_helper.js"] }], "permissions": [ "activeTab" ], "host_permissions": [ "http://www.blogger.com/", "*://*/*" ] }

emergente.js

 document.addEventListener('DOMContentLoaded', function() { console.log('got tabs id'); tab = getCurrentTab(); console.log('Active tab ' + tab.id); }); async function getCurrentTab(){ console.log('trying to get tabs id'); let queryOptions = {active: true, currentWindow: true}; return await chrome.tabs.query(queryOptions) .then((tabs) => { console.log('Obtained tab ID'); console.log(tabs); return tabs[0]; }) .catch((Error) => { console.log('it failed'); console.error; return; }) }
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

document.addEventListener('DOMContentLoaded', async function() { console.log('got tabs id'); tab = await getCurrentTab(); console.log('Active tab ' + tab.id); });

Su enfoque ya era correcto, pero si desea usar await en la función await, también debe hacer que la función de ejecución sea asíncrona.

about 4 years ago · Juan Pablo Isaza Denunciar

0

el usuario menciona que intenta usar =await getCurrentTab() pero encuentra un error que await es solo para funciones asíncronas...

agregar async a la función de escucha de eventos solucionó el problema

cambia esto:

 document.addEventListener('DOMContentLoaded', function() {

a esto:

 document.addEventListener('DOMContentLoaded', async function() {
about 4 years ago · Juan Pablo Isaza 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 Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda