Tengo este código que se supone que debe escribir datos en un archivo de texto:
const test = [ 'test1', 'test2' ] fs.writeFile('file.txt', test, {flag: "a"}, err => { if (err) throw err })El problema es que el código funciona sin errores, pero no hay datos en el archivo. Si solo pongo y ejecuto este fragmento de código en algún archivo de prueba, funciona correctamente, pero no en la función, donde se supone que debe estar este código. ¿Qué ocurre? ¿Por qué no hay datos en el archivo si ejecuto el código en función, pero todo funciona correctamente cuando lo ejecuto en el archivo de prueba?
Aquí está el código de la función:
const fs = require("fs"); (async () => { const test = [ 'test1', 'test2' ] fs.writeFile('file.txt', test, {flag: "a"}, err => { if (err) throw err }) process.exit(1); } catch (e) { console.log('error: ', e) process.exit(1) } })()Te estás perdiendo la parte de "intentar" de tu intento/captura.
También está saliendo del script antes de que se escriba el archivo.
prueba writeFileSync en su lugar.
const fs = require("fs"); (async() => { const test = [ 'test1', 'test2' ] try { fs.writeFileSync('file.txt', test, { flag: "a" }); process.exit(1); } catch (e) { console.log('error: ', e) process.exit(1) } })()