Menu
CoddyTech

Module đầu tiên của bạn

Thuộc phần Kiến thức cơ bản về Node.js trong hành trình Node.js của Coddy. Bài học 7 trên 33.

notes.js ngày càng lớn, và code định dạng ghi chú sẽ cần dùng ở nhiều nơi.

Module là một tệp. Đặt export trước một hàm cho phép các tệp khác sử dụng hàm đó, còn import { name } from './file.js' sẽ nhập hàm vào:

// math.js
export function add(a, b) {
    return a + b;
}

// app.js
import { add } from './math.js';
console.log(add(2, 3));

Nếu không có export, hàm chỉ dùng được trong math.js, và câu lệnh import sẽ lỗi. Đường dẫn bắt đầu bằng ./, nghĩa là cùng thư mục, và kết thúc bằng .js: Node không tự đoán phần mở rộng.

challenge icon

Thử thách

Dễ

notes.js đang dài dần. Hãy chuyển đoạn code biến một ghi chú thành một dòng có đánh số sang tệp riêng format.js để các tệp khác cũng có thể dùng.

  1. Trong format.js, viết hàm formatNote(n, text) và xuất hàm đó. Hàm trả về số, dấu chấm, một dấu cách, rồi đến văn bản. formatNote(1, 'Buy milk') trả về '1. Buy milk', còn formatNote(3, 'Call Ada') trả về '3. Call Ada'. Hàm trả về dòng văn bản, không in dòng đó ra.
  2. Trong notes.js, nhập formatNote từ ./format.js ở đầu tệp.
  3. Trong nhánh add, thay dòng in ra Adding: .... Giờ chương trình in ra Adding: rồi đến formatNote(1, text), tức là ghi chú được đánh số 1. Hiện tại mọi ghi chú đều mang số 1; số thứ tự thực sẽ xuất hiện trong bài học tiếp theo.

node notes.js add Buy milk in ra:

Adding: 1. Buy milk

Thử nhé: nhập add Buy milk vào ô sau $ node notes.js rồi nhấn Enter. Bạn sẽ thấy Adding: 1. Buy milk. Tiếp theo, xem Node thông báo gì khi đường dẫn sai: xóa .js khỏi dòng nhập trong notes.js rồi chạy lại. Chương trình dừng và báo lỗi rằng không thể tìm thấy module format. Thêm lại .js trước khi nhấn Kiểm tra.

Tự làm thử

// formatNote(1, 'Buy milk') phải trả về '1. Buy milk'.
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Kiến thức cơ bản về Node.js

Tự luyện tập: Playground Express