📜  NodeJS fs-extra emptyDir()函数

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

NodeJS fs-extra emptyDir()函数

fs-extra是一个模块,用于添加本机 fs 模块中未包含的文件系统方法。它还为 fs 方法添加了 promises 支持。某些文件系统方法不包含在原生 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
// 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.');
})


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


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

All files deleted from directory successfully.

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

索引.js

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

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

All files deleted Succesfully

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