最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

如何避免在JavaScript中使用.then()地狱? [重复]

网站源码admin18浏览0评论

如何避免在JavaScript中使用.then()地狱? [重复]

如何避免在JavaScript中使用.then()地狱? [重复]

此问题已经在这里有了答案:

  • Avoiding callback hell in promises using nodejs2个答案
回答如下:

等待aysnc,您可以将回调地狱转换为此:

重要注意事项是:

  • 该函数允许使用await之前的async关键字
  • 要处理异常,您需要使用try catch块。
async function uploadToYoutube() {

    try {
        let token = await refreshToken();

        let request = {}

        const youtubeUploadResponse = await axios.post(`${youtubeUrl}/upload/youtube/v3/videos?access_token=${token}&part=contentDetails`, request);

        let uploadResponse = {};

        token = await refreshToken();

        const youtubeUpdateResponse = await axios.put(`${youtubeUrl}?access_token=${token}`, uploadResponse);

        let updateResponse = {};

        let postResponse = await axios.post(`${BasePath}/v1/videos`, updateResponse, headers);

        if (postResponse.data.response === 'success') {
            return dispatch(receivePostsData(postResponse.data))
        } else if (postResponse.data.response === 'failed') {
            //??? why do you here act like a success?
            return dispatch(receivePostsData(postResponse.data))
        }
    } catch (error) {
        //??? why do you here act like a success?
        return dispatch(receivePostsData(error))
    }
}
发布评论

评论列表(0)

  1. 暂无评论