Die einfache und moderne Lösung für Node V10 und höher
Wie einige Antworten bereits erwähnt haben, können Sie seit Node 10 recursive:true
für mkdir
verwenden
Was noch nicht erwähnt wurde, ist dass bei Verwendung von recursive:true, mkdir keinen Fehler zurückgibt, wenn das Verzeichnis bereits existiert.
Sie können also Folgendes tun:
fs.mkdir(dirPath,{recursive:true},(err) => {
if(err) {
//Hinweis: Dies wird NICHT ausgelöst, wenn das Verzeichnis bereits existierte
console.warn(err)
}
else{
//Verzeichnis existiert jetzt
}
})
Verwendung von Promises
Auch seit Node 10 können Sie Promise-Versionen aller fs-Funktionen erhalten, indem Sie fs/promises
fordern
Wenn Sie diese beiden Dinge zusammenfügen, erhalten Sie diese einfache Lösung:
import * as fs from 'fs/promises';
await fs.mkdir(dirPath, {recursive:true}).catch((err) => {
//Entscheiden Sie, was Sie tun möchten, wenn dies fehlschlägt
console.error(err);
});
//Verzeichnis existiert jetzt