您的位置:首页 > Web前端 > Node.js

nodejs: mkdirs 递归创建目录

2016-03-18 16:53 281 查看
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xukung82/article/details/50924968 nodejs里面的所有文件操作我们很显然地都会选择异步方式。


nodejs对于文件的基本操作果然是很基本的。例如我们想创建一个二级目录:/abc/def,使用fs.mkdir必须先判断/abc,存在,才继续创建/abc/def。这样几个一层层的callback,必要会影响代码的美观性(^_^,写代码也是一门艺术)。 于是乎有了一下通过递归对fs.mkdir和fs.exists的封装,得到的目录创建 辅助函数:mkdirs


var fs = require('fs');
var path = require('path');

// 创建所有目录
var mkdirs = function (dirpath, mode, callback) {
//console.log(123);

fs.exists(dirpath, function (exists) {
if (exists) {
callback(dirpath);
} else {
//尝试创建父目录,然后再创建当前目录
mkdirs(path.dirname(dirpath), mode, function () {
fs.mkdir(dirpath, mode, callback);
});
}
});
};

module.exports = mkdirs;


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: