我如何改变我的代码从回调函数承诺



我有如下代码:代码仍然使用回调函数,我想改变使用承诺。我不知道该如何改变它们。你能帮我改一下吗


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

fs.readdir('/')已经承诺,您需要像您那样使用chaining或使用语法糖在IIFE中使用async/await来解决它

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

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

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")

相关内容

  • 没有找到相关文章

最新更新