Menu
CoddyTech

기본 내보내기

Coddy Node.js 여정의 Node.js 기초 섹션에 포함된 레슨. 33개 중 8번째.

이 단원에서는 노트를 보관하는 저장소, 한 가지 역할만 하는 파일인 store.js를 추가합니다. 이런 파일은 그 한 가지 역할을 기본 내보내기로 내보내고, 이를 가져오는 파일에서는 원하는 이름을 붙입니다.

export default는 파일이 다루는 하나의 값을 표시합니다. 가져오는 쪽에서는 원하는 이름을 붙이고 중괄호를 쓰지 않습니다.

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

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

중괄호는 이름 있는 내보내기를 요청하므로, import { config } from './config.js'는 여기서 실패합니다. config.js에는 이름이 없기 때문입니다. 파일의 주요 값에는 기본 내보내기를, 도우미 함수가 모인 파일에는 이름 있는 내보내기를 사용하세요.

challenge icon

챌린지

쉬움

메모를 저장할 한 곳이 필요합니다. 새 파일 store.js는 store 객체에 메모를 보관하며, 이 객체는 store.notes에 메모 세 개를 담은 상태로 시작합니다. 이 저장소를 notes.js와 공유하고, add와 list에서 사용하세요.

  1. store.js에서 store를 파일의 기본 내보내기로 만드세요. 맨 아래의 주석이 그 위치를 표시합니다.
  2. notes.js에서 맨 위에 formatNote 가져오기 구문 옆에 저장소를 가져오세요. 기본 가져오기에는 중괄호가 없습니다.
  3. add 분기에서 store.add(text)로 메모를 추가하세요. 이 함수는 새 메모의 번호를 반환합니다. Adding: 뒤에 그 번호를 사용해 서식을 지정한 메모를 출력하세요. 저장소에는 메모 세 개가 있으므로 node notes.js add Buy bread를 실행하면 다음이 출력됩니다:
    Adding: 4. Buy bread
  4. list 분기에서는 Notes for ... 제목을 유지하세요. 그 아래의 No notes yet를 저장소의 모든 메모로 바꾸고, 한 줄에 하나씩 formatNote로 서식을 지정해 1부터 번호를 매기세요. node notes.js list를 실행하면 다음이 출력됩니다:
    Notes for you
    1. Buy milk
    2. Call Ada
    3. Water the plants
    저장소에 메모가 없더라도 제목 아래에 No notes yet를 출력하세요.

직접 해 보기: $ node notes.js 뒤의 입력란에 add Buy bread를 입력하고 Enter를 누르세요. Adding: 4. Buy bread가 표시됩니다. 그런 다음 list를 입력하세요. 처음 있던 메모 세 개가 표시되지만 Buy bread는 표시되지 않습니다. 저장소는 메모리에 있으므로 실행할 때마다 store.js에 있는 메모 세 개로 다시 시작합니다. 3장에서는 메모를 파일에 저장합니다.

직접 해보기

// chapter 3에서 파일에 저장하기 전까지 메모는 여기에 보관됩니다.
const store = {
    notes: ['Buy milk', 'Call Ada', 'Water the plants'],
    add(text) {
        this.notes.push(text);
        return this.notes.length;
    },
};

// store를 이 파일의 기본 내보내기로 설정합니다.

Node.js 기초의 모든 레슨

직접 연습해 보세요: Express 플레이그라운드