Menu
CoddyTech

Standard-Exporte

Teil des Abschnitts Node.js-Grundlagen der Node.js-Journey von Coddy. Lektion 8 von 33.

Diese Lektion fügt store.js hinzu, eine Datei zu einem einzigen Thema: dem Speicher, der deine Notizen enthält. Eine solche Datei exportiert ihr Thema als Default-Export, und die Datei, die sie importiert, kann dafür einen beliebigen Namen wählen.

export default kennzeichnet den einen Wert, um den es in einer Datei geht. Die importierende Datei gibt ihm einen beliebigen Namen und verwendet keine geschweiften Klammern:

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

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

Geschweifte Klammern stehen für einen benannten Export. Deshalb schlägt import { config } from './config.js' hier fehl: config.js exportiert nichts unter einem Namen. Verwende einen Default-Export für den Hauptwert einer Datei und benannte Exporte für eine Datei mit Hilfsfunktionen.

challenge icon

Aufgabe

Einfach

Deine Notizen brauchen einen gemeinsamen Speicherort. Die neue Datei store.js speichert sie in einem store-Objekt, das mit drei Notizen in store.notes beginnt. Teile diesen Speicher mit notes.js und verwende ihn in add und list.

  1. Mach in store.js store zum Standardexport der Datei. Der Kommentar am Ende markiert die Stelle.
  2. Importiere in notes.js den Speicher am Anfang, neben dem Import von formatNote. Ein Standardimport hat keine geschweiften Klammern.
  3. Füge im add-Zweig die Notiz mit store.add(text) hinzu. Dabei wird die Nummer der neuen Notiz zurückgegeben. Gib Adding: gefolgt von der Notiz aus, formatiert mit dieser Nummer. Der Speicher beginnt mit drei Notizen, daher gibt node notes.js add Buy bread Folgendes aus:
    Adding: 4. Buy bread
  4. Behalte im list-Zweig die Überschrift Notes for ... bei. Ersetze darunter No notes yet durch alle Notizen im Speicher, jeweils eine pro Zeile, formatiert mit formatNote und ab 1 nummeriert. node notes.js list gibt Folgendes aus:
    Notes for you
    1. Buy milk
    2. Call Ada
    3. Water the plants
    Wenn der Speicher keine Notizen enthält, gib trotzdem No notes yet unter der Überschrift aus.

Probier es aus: Gib im Feld nach $ node notes.js add Buy bread ein und drücke die Eingabetaste. Du siehst Adding: 4. Buy bread. Gib dann list ein: Du siehst die drei anfänglichen Notizen, aber nicht Buy bread. Der Speicher befindet sich im Arbeitsspeicher, daher beginnt jeder Lauf wieder mit den drei Notizen aus store.js. In Kapitel 3 werden die Notizen in einer Datei gespeichert.

Probier es selbst

// Die Notizen bleiben hier, bis Kapitel 3 sie in einer Datei speichert.
const store = {
    notes: ['Buy milk', 'Call Ada', 'Water the plants'],
    add(text) {
        this.notes.push(text);
        return this.notes.length;
    },
};

// Mach store zum Standardexport dieser Datei.

Alle Lektionen in Node.js-Grundlagen

Übe selbstständig: Express-Playground