繁体   English   中英

如何将我的代码从回调函数更改为 promise

[英]How do I change my code from callback function to promise

我有一个像下面这样的代码。 代码仍然使用回调函数,我想使用承诺进行更改。 我犹豫如何改变它们。 你能帮忙如何改变它吗


const fs = require('fs')

fs.readdir('/', (err, result) => {
  if (err) {
    throw new Error(err.message)
  }
  console.log(result)
})

fs.readdir('/')已经答应了,你需要用两种解决它chaining像你这样或语法sugare使用async/awaitIIFE

(async () => {
   try{
        const result = await fs.readdir('/');
        console.log(result)
   }catch(err){
      console.log(err.message)
   }
})();

如果您导入位于require('fs').promisesreaddir()异步版本,则您可以异步读取目录

const fs = require('fs').promises

const asyncReadDir = async(dirName) => {
    try {
         const dirData = await fs.readdir(dirName)
         console.log("Read successfully")
         // other code here
    } catch(error){
         // catch errors
         console.log(error)
    }
}

asyncReadDir("/downloads")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM