fs.mkdir创建不了多层目录?
最近在实现上一章博客:
《前端性能优化之图片压缩详细流程(工作实用)》
https://blog.csdn.net/fearlessxmm/article/details/89443129
的时候遇到一个问题:mkdir创建不了目录,总是报找不到该文件的错。
源目录:
在执行gulp任务时,流程中有一个步骤是需要创建dist/img/目录:
主要代码如下:
fs.mkdirSync('dist/img/');
但是,执行任务时,终端报错了:
[22:27:32] Error: ENOENT: no such file or directory, mkdir 'dist/img/'
明明逻辑没错,使用fs.mkdirSync('dist/img/');
创建这样一个目录,但是就是报错了。
重点:(敲黑板
查了资料才知道,
目录要一层一层的创建,从源目录截图知道,一开始没有dist文件夹的,所以执行创建目录操作时,是要先创建dist文件夹,再创建子目录img的。
所以修改代码如下:
// 目录要一层一层的创建
fs.mkdirSync('dist/');
fs.mkdirSync('dist/img/');
成功!
总结:
fs.mkdir可以创建多层目录,但是要一层一层地创建。