gpt4 book ai didi

javascript - 由于异步回调导致变量为空

转载 作者:太空宇宙 更新时间:2023-11-04 01:30:08 25 4
gpt4 key购买 nike

有一些非常简化的伪代码来理解我的代码的结构。

有什么简单的方法可以解决我的异步回调困境。
在 requestOption 中使用 token 时,该 token 将为空。因此,由于缺少 token ,以下 requestOption 的使用将不会给出任何结果。

var token = ''
var auth1 = someData
var auth2 = someFunc(auth1)
var auth3 = someOtherData
var auth4 = someOtherFunc(auth3)
var finalAuth = someFinalData
var finalAuth2 = finalAuth.someFinalFunc(auth4, cb)
cb.onSuccess(result)
token = result.getToken()

var requestOption = {
someData: ...,
'authToken': token,
someMoreData: ...
}
req = request.post(requestOption)

解决方案有很多,其中大多数都包括在某种程度上使用函数。
也许在另一个文件中模块化身份验证和处理请求是有用的。

但我想保持简单,而不是依赖于这样的东西

var empty = ''
var data = 'xyz'
auth(data, {
onSuccess: function(res) {
doSomething(res)
}
})

function doSomething(var) {
// do something
}

到目前为止,我发现的内容无法帮助我,除非我的代码过于复杂。

最佳答案

如果你不想处理 Promise 和回调,那么将你的函数标记为异步,然后等待你的结果,它是神奇地为你包装 Promise 的语法糖。当处理像帖子这样的异步函数时,有些人必须等待响应。

https://javascript.info/async-await

关于javascript - 由于异步回调导致变量为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56369340/

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