fs-extra 中的同步 vs 异步 vs 异步/等待 - NodeJS

fs-extra 简介

在继续使用 fs-extra 之前,必须对 fs 文件系统有基本的了解。fs-extra 是 fs 文件系统的扩展,比它有更多的方法。它添加了一些在 naive fs 模块中没有的文件方法系统。fs-extra 为 fs 方法添加了 promise 支持,因此比 fs 更好。

安装

npm install fs-extra

语法

fs-extra 是原生 fs 文件系统的替代品。fs 中的所有方法也都附加到 fs-extra。因此,您不需要再次包含 fs。

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

默认情况下,fs-extra 提供的大多数方法都是异步的。如果没有配置任何回调,异步方法将返回一个承诺。

示例

  • 在继续之前检查是否安装了 fs-extra

  • 可以使用以下命令查看是否安装了fs-extra

npm ls fs-extra

  • 创建一个copyFiles.js并将以下代码片段复制粘贴到该文件中

  • 现在,运行以下命令来运行以下代码片段

node copyFiles.js

代码片段-

// fs-extra 导入使用

const fs = require('fs-extra')

// 使用带有承诺的异步复制文件:

fs.copy('/tmp/myfile, '/tmp/myAsyncNewfileWithPromise')

   .then(() => console.log('Async Promise Success!'))

   .catch(err => console.error(err))

// 使用带有回调的异步复制文件:

fs.copy('/tmp/myfile', '/tmp/myAsyncNewfileWithCallback', err => {

   if (err) return console.error(err)

   console.log('Async Callback Success!')

})

// 使用同步复制文件:

try {

   fs.copySync('/tmp/myfile', '/tmp/mySyncNewfile')

   console.log('Sync Success!')

} catch (err) {

   console.error(err)

}

// 使用 Async/Await 复制文件:

async function copyFiles () {

   try {

      await fs.copy('/tmp/myfile', '/tmp/myAwaitFile')

      console.log('Await Success!')

   } catch (err) {

      console.error(err)

   }

}

copyFiles()

console.log("所有文件复制成功!!!")

输出结果
C:\Users\nhooo\> node copyFiles.js

Sync Success!

所有文件复制成功!!!

Async Promise Success!

Await Success!

Async Callback Success!

以上是 fs-extra 中的同步 vs 异步 vs 异步/等待 - NodeJS 的全部内容, 来源链接: utcz.com/z/322778.html

回到顶部