Используя сокращение, мы можем проверить, существует ли каждый путь и создать его, если это необходимо, и таким образом, я думаю, что легче следовать. Отредактировано, спасибо @Arvin, мы должны использовать path.sep, чтобы получить подходящий разделитель сегментов пути для конкретной платформы.
const path = require('path');
// Path separators could change depending on the platform
const pathToCreate = 'path/to/dir';
pathToCreate
.split(path.sep)
.reduce((currentPath, folder) => {
currentPath += folder + path.sep;
if (!fs.existsSync(currentPath)){
fs.mkdirSync(currentPath);
}
return currentPath;
}, '');