Modules intégrés
Fait partie de la section Les bases de Node.js du Journey Node.js de Coddy. Leçon 9 sur 33.
Vos notes seront bientôt enregistrées dans un fichier, et les chemins d’accès aux fichiers varient d’un ordinateur à l’autre.
Node fournit ses propres modules pour cela. Vous les importez comme vos fichiers, avec un préfixe node: et sans rien installer. path.join assemble les parties d’un chemin avec le séparateur approprié, path.basename renvoie la dernière partie, os.homedir() correspond à votre dossier personnel, et process.cwd() correspond au dossier dans lequel le programme s’exécute.
import os from 'node:os';
import path from 'node:path';
const file = path.join(os.homedir(), 'photos', 'cat.png');
console.log(file); // /home/ada/photos/cat.png
console.log(path.basename(file)); // cat.pngpath.join insère une barre oblique entre les parties, ainsi vous n’obtenez jamais photoscat.png.
Défi
Facile- Une nouvelle commande
whereaffiche le chemin complet denotes.jsondans le dossier courant :path.join(process.cwd(), 'notes.json'). - Une deuxième ligne affiche le nom de base de ce chemin.
Exécute node notes.js where. Le fichier n’existe pas encore : le chapitre 3 le crée.
Essayez vous-même
// Votre outil de prise de notes commence ici.
import { formatNote } from './format.js';
import store from './store.js';
const [command, ...words] = process.argv.slice(2);
const text = words.join(' ');
if (command === 'add') {
const n = store.add(text);
console.log(`Adding: ${formatNote(n, text)}`);
} else if (command === 'list') {
const owner = process.env.NOTES_OWNER ?? 'you';
console.log(`Notes for ${owner}`);
if (store.notes.length === 0) {
console.log('No notes yet');
}
store.notes.forEach((note, i) => console.log(formatNote(i + 1, note)));
} else {
if (command) {
console.error(`Unknown command: ${command}`);
}
console.error('Usage: node notes.js <command> [words]');
process.exit(1);
}
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Les bases de Node.js
1Exécuter JavaScript avec Node
Bonjour, NodeLire la commandeArguments de ligne de commandeCommandes5Événements, entrées et packages
Écouter avant d’émettreÉmetteurs d’événementsLire les entréesEntraînez-vous par vous-même : Playground Express