Menu
CoddyTech

Exports par défaut

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

Cette leçon ajoute store.js, un fichier consacré à une seule chose : le magasin qui contient tes notes. Un fichier de ce type partage cette chose sous forme d’exportation par défaut, et le fichier qui l’importe peut lui donner n’importe quel nom.

export default indique la valeur dont traite un fichier. Le fichier qui l’importe lui donne n’importe quel nom et n’écrit pas d’accolades :

// config.js
const config = { port: 3000 };
export default config;

// app.js
import settings from './config.js';
console.log(settings.port);

Les accolades demandent une exportation nommée, donc import { config } from './config.js' échoue ici : config.js ne nomme rien. Utilise une exportation par défaut pour la valeur principale d’un fichier et des exportations nommées pour un fichier contenant des fonctions utilitaires.

challenge icon

Défi

Facile

Vos notes ont besoin d’un endroit où être stockées. Le nouveau fichier store.js les contient dans un objet store, qui commence avec trois notes dans store.notes. Partagez ce stockage avec notes.js, puis utilisez-le dans add et list.

  1. Dans store.js, faites de store l’exportation par défaut du fichier. Le commentaire en bas indique l’emplacement.
  2. Dans notes.js, importez le stockage en haut, à côté de l’importation de formatNote. Une importation par défaut ne comporte pas d’accolades.
  3. Dans la branche add, ajoutez la note avec store.add(text). Cette méthode renvoie le numéro de la nouvelle note. Affichez Adding: suivi de la note, formatée avec ce numéro. Le stockage commence avec trois notes, donc node notes.js add Buy bread affiche :
    Adding: 4. Buy bread
  4. Dans la branche list, conservez le titre Notes for .... En dessous, remplacez No notes yet par toutes les notes du stockage, une par ligne, chacune formatée avec formatNote et numérotée à partir de 1. node notes.js list affiche :
    Notes for you
    1. Buy milk
    2. Call Ada
    3. Water the plants
    Si le stockage ne contient aucune note, affichez quand même No notes yet sous le titre.

Essayez : saisissez add Buy bread dans la zone après $ node notes.js, puis appuyez sur Entrée. Vous voyez Adding: 4. Buy bread. Saisissez ensuite list : vous voyez les trois notes de départ, mais pas Buy bread. Le stockage réside en mémoire, donc chaque exécution recommence avec les trois notes de store.js. Le chapitre 3 enregistre les notes dans un fichier.

Essayez vous-même

// Les notes sont conservées ici jusqu’à ce que le chapitre 3 les enregistre dans un fichier.
const store = {
    notes: ['Buy milk', 'Call Ada', 'Water the plants'],
    add(text) {
        this.notes.push(text);
        return this.notes.length;
    },
};

// Faites de store l’exportation par défaut de ce fichier.

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

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