ensureDir()函数确保目录用户正在请求的目录存在。如果目录结构不存在,该函数将自行创建结构。 mkdirs()和mkdirp()是该函数的其他名称,这意味着我们可以使用它们代替ensureDir(),一切都会按原样进行。
用法:
fs.ensureDir(dir,options,callback) // OR fs.mkdirs(dir,options,callback) // OR fs.mkdirp(dir,options,callback)
参数:此函数接受以下三个参数:
- dir:它是一个包含目录路径的字符串。
- options:它是用于指定可选参数的对象或整数。
- Integer:如果是整数,则为mode。
- Object:如果是对象,则为{mode:integer}。
- callback:函数完成任务后将调用它。这将导致错误或成功。也可以用Promise代替回调函数。
返回值:它不返回任何东西。
请按照以下步骤实现该函数:
步骤1:可以使用以下命令安装模块:
npm install fs-extra
步骤2:安装模块后,您可以使用以下命令检查已安装模块的版本:
npm ls fs-extra
步骤3:使用以下命令创建一个名称为index.js的文件,并在文件中需要fs-extra模块:
const fs = require('fs-extra');
步骤4:要运行该文件,请在终端中输入以下命令:
node index.js
项目结构:项目结构如下所示。
范例1:创建一个名称为‘direc’的目录。我们将把这个目录传递给函数。
index.js
// Requiring module
const fs = require("fs-extra");
// The directory already
// exists so function will do nothing
const dir = "direc";
// Function call using callback functions
fs.ensureDir(dir, (err) => {
if (err) return console.log(err);
console.log("Directory exists");
});
使用以下命令运行index.js文件:
node index.js
输出:
Directory exists
范例2:这次,我们将传递一个不存在的目录结构。
index.js
// Requiring module
const fs = require("fs-extra");
// The directory structure
// does not exist so function will create it
const dir = "direc/dir";
// Additional options Specifying mode
const options = {
mode:0o2775,
};
// Function call using Promises
fs.ensureDir(dir, options)
.then(() => console.log("Directory Structure Created"))
.catch((e) => console.log(e));
使用以下命令运行index.js文件:
node index.js
输出:
Directory Structure Created
参考:https://github.com/jprichardson/node-fs-extra/blob/HEAD/docs/ensureDir.md
相关用法
- Node.js GM solarize()用法及代码示例
- Node.js MySQL Max()用法及代码示例
- Node.js process.nextTick()用法及代码示例
- PHP imagecreatetruecolor()用法及代码示例
注:本文由纯净天空筛选整理自pritishnagpal大神的英文原创作品 Node.js fs.extra ensureDir() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。