Module tích hợp sẵ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 9 trên 33.
Ghi chú của bạn sẽ sớm được lưu trong một tệp, và đường dẫn tệp khác nhau tùy theo máy tính.
Node có sẵn các module để xử lý việc này. Bạn nhập chúng như các tệp của mình, với tiền tố node: và không cần cài đặt gì. path.join ghép các phần của đường dẫn bằng dấu phân cách phù hợp, path.basename trả về phần cuối cùng, os.homedir() là thư mục nhà của bạn, còn process.cwd() là thư mục mà chương trình chạy trong đó.
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 đặt một dấu gạch chéo giữa các phần, nên bạn sẽ không bao giờ nhận được photoscat.png.
Thử thách
Dễ- Lệnh
wheremới in ra đường dẫn đầy đủ củanotes.jsontrong thư mục hiện tại:path.join(process.cwd(), 'notes.json'). - Dòng thứ hai in ra tên cơ sở của đường dẫn đó.
Chạy node notes.js where. Tệp này chưa tồn tại: chương 3 sẽ tạo tệp đó.
Tự làm thử
// Công cụ ghi chú của bạn bắt đầu từ đây.
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);
}
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
1Chạy JavaScript trên Node
Xin chào, NodeĐọc lệnhĐối số dòng lệnhCác lệnhTự luyện tập: Playground Express