Yerleşik Modüller
Coddy'nin Node.js Journey'sinin Node.js Temelleri bölümünün bir parçası. Ders 8 / 24.
Notların yakında bir dosyada saklanacak ve dosya yolları bir bilgisayardan diğerine farklılık gösterir.
Node bunun için kendi modüllerini sunar. Bunları dosyalarını içe aktardığın gibi, node: önekiyle ve yüklemen gereken hiçbir şey olmadan içe aktarırsın. path.join bir yolun parçalarını uygun ayraçla birleştirir, path.basename son parçayı verir, os.homedir() ana klasöründür ve process.cwd() programın çalıştığı klasördür.
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 parçaların arasına bir eğik çizgi koyar, böylece hiçbir zaman photoscat.png elde etmezsin.
Görev
Kolay- Yeni bir
wherekomutu, geçerli klasördekinotes.jsondosyasının tam yolunu yazdırır:path.join(process.cwd(), 'notes.json'). - İkinci bir satır, bu yolun dosya adını yazdırır.
node notes.js where komutunu çalıştır. Dosya henüz mevcut değil: 3. bölümde oluşturulacak.
Kendin dene
// Not aracınız burada başlıyor.
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);
}
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Node.js Temelleri bölümündeki tüm dersler
1JavaScript'ı Node Üzerinde Çalıştırma
Merhaba, NodeKomut Satırı ArgümanlarıKomutlar