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

263
Vistas
¿Cómo hacer que fs.readFile async espere?

Tengo este código nodejs aquí que lee una carpeta y procesa el archivo. El código funciona. Pero todavía está imprimiendo todo el nombre del archivo primero, luego solo lee el archivo. ¿Cómo obtengo un archivo y luego leo el contenido del archivo primero y no obtengo todos los archivos primero?

 async function readingDirectory(directory) { try { fileNames = await fs.readdir(directory); fileNames.map(file => { const absolutePath = path.resolve(folder, file); log(absolutePath); fs.readFile(absolutePath, (err, data) => { log(data); // How to make it async await here? }); }); } catch { console.log('Directory Reading Error'); } } readingDirectory(folder);
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Para usar await , debe usar versiones de promesa de fs.readFile() y fs.readdir() que puede obtener en fs.promises y si desea que se ejecuten secuencialmente, use un bucle for en lugar de .map() :

 async function readingDirectory(directory) { const fileNames = await fs.promises.readdir(directory); for (let file of fileNames) { const absolutePath = path.join(directory, file); log(absolutePath); const data = await fs.promises.readFile(absolutePath); log(data); } } readingDirectory(folder).then(() => { log("all done"); }).catch(err => { log(err); });
over 4 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 Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda