Il risultato di una Promise
Fa parte della sezione Fondamenti di Node.js del percorso Node.js di Coddy. Lezione 19 di 33.
Una promise rappresenta un risultato che arriverà in seguito. A differenza della versione con callback di node:fs, readFile di node:fs/promises non accetta callback e restituisce una promise. Il suo metodo .then accetta una funzione da chiamare con il risultato quando la lettura riesce.
import { readFile } from 'node:fs/promises';
readFile('name.txt', 'utf8').then((name) => {
console.log('Hello, ' + name);
});Il parametro name contiene il testo del file, non una promise. Le operazioni che dipendono dal testo vanno inserite qui. Per ora il file è disponibile e la lettura riesce. Il passaggio successivo gestirà una lettura non riuscita.
Sfida
FacileEsegui prima practice.js: stampa Note: [object Promise]. Il programma concatena il testo alla promise invece che al risultato ottenuto al suo completamento.
Usa una callback .then per stampare la lettura completata come Note: seguito dal testo del file. Senza argomenti, legge note.txt e restituisce Note: Buy milk. Prova other.txt: aspettati Note: Call Ada.
Provalo tu
import { readFile } from 'node:fs/promises';
const file = process.argv[2] ?? 'note.txt';
console.log('Note: ' + readFile(file, 'utf8'));
Tutte le lezioni di Fondamenti di Node.js
Esercitati da solo: Playground Express