當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Node.js fs.extra ensureDir()用法及代碼示例

ensureDir()函數確保目錄用戶正在請求的目錄存在。如果目錄結構不存在,該函數將自行創建結構。 mkdirs()和mkdirp()是該函數的其他名稱,這意味著我們可以使用它們代替ensureDir(),一切都會按原樣進行。

用法:

fs.ensureDir(dir,options,callback)
// OR
fs.mkdirs(dir,options,callback)
// OR
fs.mkdirp(dir,options,callback)

參數:此函數接受以下三個參數:

  1. dir:它是一個包含目錄路徑的字符串。
  2. options:它是用於指定可選參數的對象或整數。
    • Integer:如果是整數,則為mode。
    • Object:如果是對象,則為{mode:integer}。
  3. 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

相關用法


注:本文由純淨天空篩選整理自pritishnagpal大神的英文原創作品 NodeJS fs.extra ensureDir() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。