如何在Node.js中编写同步代码?

时间:2018-11-25 13:28:29

标签: node.js

我知道这是一个不好的做法,但是了解如何处理某些案件会有所帮助。

就我而言,我试图创建一些文件,然后读取它们。我想知道如何在不使用setTimeout和条件的情况下,在尝试读取其包含目录之前等待创建完成?

2 个答案:

答案 0 :(得分:0)

您可以使用async等待或答应完成它

示例:-

async function f() {
  return 1;
}

您可以在其中传递方法。它将等到您的回应来临

答案 1 :(得分:0)

许多NodeJS函数具有synchronous个对应项,您应该寻找那些对应项。

https://nodejs.org/api/fs.html处查看文件系统的文档。 在页面上搜索“同步”,您会发现它提供了许多同步功能。

提供此功能的不只是File SystemChild_process的作用相同,例如参见https://nodejs.org/api/child_process.html#child_process_child_process_execsync_command_options

如果找不到所需功能的本机同步版本,npm注册表是一个不错的选择,很多时候您可以在此处找到同步包。

祝你好运!

p.s。在NodeJS中编写同步代码并不总是坏习惯,例如许多CLI工具都是同步的。