📜  Node.js fs-extra emptyDir()函数

📅  最后修改于: 2022-05-13 01:56:21.332000             🧑  作者: Mango

Node.js fs-extra emptyDir()函数

fs-extra是一个模块,它添加了本机 fs 模块中不包含的文件系统方法。它还为 fs 方法添加了 Promise 支持。一些文件系统方法不包含在本机 fs 模块中,因此,如果我们需要使用它们,则必须单独安装它们,但是 fs-extra 模块具有所有这些方法,这使其成为 fs 模块的绝佳替代品。

顾名思义, emptyDir()函数清空整个目录。如果目录中有任何内容可用,则使用此函数将其删除。目录本身不会被删除,只会删除目录中存在的内容。如果目录不存在,则创建它。

句法:

fs.emptyDir(dir,callback)

参数:

  • dir:它是一个字符串,包含将被清空的目录的路径。
  • callback:当目录为空时调用的函数。它是一个可选参数。我们也可以使用 Promise 代替回调函数。

返回值:该函数不返回任何内容。

按照以下步骤实现该函数:

1. 可以使用以下命令安装模块:

npm install fs-extra

2. 安装模块后,您可以使用以下命令检查已安装模块的版本:

npm ls fs-extra

3. 创建一个名为 index.js 的文件,并使用以下命令在文件中要求 fs-extra 模块:

const fs = require('fs-extra');

4. 创建一个名为 test 的文件夹,并在该文件夹中添加一些文件。这是我们将在函数中传递的文件夹。

5. 要运行该文件,请在终端中写入以下命令:

node index.js

项目结构:项目结构将如下所示。

示例 1:下面的示例说明了 fs-extra emptyDir()函数。

文件名:index.js

Javascript
// index.js
  
// Requiring module
const fs = require('fs-extra');
  
// Function call
// Using callback function
fs.emptyDir('./test',err => {
    if(err){
        console.log(err);
        return;
    }
    console.log('All files deleted from directory Successfully.');
})


Javascript
// Index.js
  
// Requiring module
const fs = require('fs-extra');
  
// Function Call
// Using promises
fs.emptyDir('./test')
.then(() => console.log('All files deleted Successfully'))
.catch(e => console.log(e))


输出:测试文件夹中的所有文件现在都被删除了。所以测试文件夹现在是空的。

All files deleted from directory Successfully.

示例 2:下面的示例说明了 fs-extra emptyDir()函数。

文件名:index.js

Javascript

// Index.js
  
// Requiring module
const fs = require('fs-extra');
  
// Function Call
// Using promises
fs.emptyDir('./test')
.then(() => console.log('All files deleted Successfully'))
.catch(e => console.log(e))

输出:再次测试文件夹现在是空的。这就是emptyDir()函数的使用方式。

All files deleted Successfully

参考: https://github.com/jprichardson/node-fs-extra/blob/HEAD/docs/emptyDir.md