Menu
CoddyTech

Le résultat d’une Promise

Fait partie de la section Les bases de Node.js du Journey Node.js de Coddy. Leçon 19 sur 33.

Une promesse représente un résultat qui arrivera plus tard. Contrairement à la version avec rappel de node:fs, readFile de node:fs/promises ne prend aucun rappel et renvoie une promesse. Sa méthode .then accepte une fonction à appeler avec le résultat lorsque la lecture réussit.

import { readFile } from 'node:fs/promises';
readFile('name.txt', 'utf8').then((name) => {
    console.log('Hello, ' + name);
});

Le paramètre name contient le texte du fichier, et non une promesse. Le code qui dépend du texte doit être placé ici. Pour l'instant, le fichier est fourni et la lecture réussit. L'étape suivante traitera le cas où la lecture échoue.

challenge icon

Défi

Facile

Exécutez d’abord practice.js : il affiche Note: [object Promise]. Le programme combine le texte avec la promesse au lieu d’utiliser le résultat qu’elle renverra.

Utilisez une fonction de rappel .then pour afficher le contenu lu une fois la lecture terminée, sous la forme Note: suivie du texte du fichier. Sans argument, le programme lit note.txt et affiche Note: Buy milk. Essayez avec other.txt : le résultat attendu est Note: Call Ada.

Essayez vous-même

import { readFile } from 'node:fs/promises';
const file = process.argv[2] ?? 'note.txt';
console.log('Note: ' + readFile(file, 'utf8'));

Toutes les leçons de Les bases de Node.js

Entraînez-vous par vous-même : Playground Express