TypeScript:
ตรวจสอบว่ามีไดเร็กทอรีหรือไม่
วิธีการ:
เมื่อ TypeScript ทำงานในสภาพแวดล้อม Node.js จะอนุญาตให้คุณตรวจสอบว่ามีไดเรกทอรีอยู่ได้โดยใช้โมดูล fs
ซึ่งมีฟังก์ชัน existsSync()
หรือฟังก์ชันแบบอะซิงโครนัส access()
ควบคู่กับ constants.F_OK
การใช้ fs.existsSync()
:
import { existsSync } from 'fs';
const directoryPath = './path/to/directory';
if (existsSync(directoryPath)) {
console.log('Directory exists.');
} else {
console.log('Directory does not exist.');
}
การใช้ fs.access()
ควบคู่กับ fs.constants.F_OK
:
import { access, constants } from 'fs';
const directoryPath = './path/to/directory';
access(directoryPath, constants.F_OK, (err) => {
if (err) {
console.log('Directory does not exist.');
return;
}
console.log('Directory exists.');
});
ผลลัพธ์ตัวอย่าง สำหรับทั้งสองวิธี โดยสมมติว่าไดเรกทอรีนั้นมีอยู่จริง:
Directory exists.
และถ้าไม่มี:
Directory does not exist.
การใช้ไลบรารีจากบุคคลที่สาม - fs-extra
:
fs-extra
เป็นไลบรารีจากบุคคลที่สามที่ได้รับความนิยมซึ่งเสริมฟังก์ชันก์ของโมดูล fs
และมีฟังก์ชันที่สะดวกยิ่งขึ้น
import { pathExists } from 'fs-extra';
const directoryPath = './path/to/directory';
pathExists(directoryPath).then(exists => {
console.log(`Directory exists: ${exists}`);
});
ผลลัพธ์ตัวอย่าง เมื่อไดเรกทอรีนั้นมีอยู่จริง:
Directory exists: true
และถ้าไม่มี:
Directory exists: false