gpt4 book ai didi

javascript - 重写这个弗兰肯斯坦 promise 链

转载 作者:行者123 更新时间:2023-11-28 18:48:35 25 4
gpt4 key购买 nike

所以我把这个令人厌恶的东西变成了现实,但我一生都无法思考如何优化它,以便我可以使用 Promise.all/Promise.join 正确运行这个链。

有人能指出我正确的方向吗?可能应该首先分离方法。

任何见解都值得赞赏。

getOpenIDConf: function() {
return client
.getAsync('openId')
.then(
function(result) {
if (!result) {
return request
.getAsync({
url: 'https://accounts.google.com/.well-known/openid-configuration',
json: true
}).spread(
function(response, body) {
var result = JSON
.stringify(body);
client.setAsync('openId',
result).then(
function() {
return result;
});
});
} else {
return result;
}
});

},

[编辑]澄清一下,我正在使用 Bluebird

最佳答案

重构一下并改变代码风格就可以得到这个。

getOpenIDConf: () => client.getAsync('openId').then(result =>
result || request.getAsync({
url: 'https://accounts.google.com/.well-known/openid-configuration',
json: true
}).get(1).then(JSON.stringify).then(result =>
client.setAsync('openId', result).return(result);
)
)
},

关于javascript - 重写这个弗兰肯斯坦 promise 链,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34904581/

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