gpt4 book ai didi

Javascript promise ,嵌套函数

转载 作者:行者123 更新时间:2023-11-29 16:34:56 24 4
gpt4 key购买 nike

我的问题是我正在运行 node.js,我有 2 个函数需要按特定顺序运行,但是它们没有返回 promise 。所以我想知道如何重写它以确保主函数返回一个 promise ,如果我有嵌套函数,我是否只从第一个函数解析运行第二个函数?

代码如下:

handleMd5Convert = (file) => {
fs.readFile(file, (err, buf) => {
fs.rename(file, directoryPath + md5(buf) + '.mp3', (err) => {
if (err) console.log('ERROR: ' + err);
})
})
})

HandleMd5Convert 应该能够 .then()

/亚历克斯

最佳答案

您应该能够将整个事情包装在 new Promise() 中并使用 resolve() & reject() 来处理成功与错误:

handleMd5Convert = (file) => {
return new Promise((resolve, reject) => {
fs.readFile(file, (err, buf) => {
if (err) return reject(err)
fs.rename(file, directoryPath + md5(buf) + '.mp3', (err) => {
if (err) return reject(err);
resolve()
})
})
})
}

handleMd5Convert('test.txt')
.then(() => console.log("done"))
.catch(err => console.log("error:", err))

关于Javascript promise ,嵌套函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52174123/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com