Promise 用法总结

基本用法:

通过reslovereject来处理异步后的反馈

    new Promise((reslove, reject) => {
    // 去请求http
    let res, error;
    if (error) {
        reject(error);
    } else {
        reslove(res);
    }
})
    .then((res) => {
        // 如果调用reslove调用这里
    })
    .catch((error) => {
        // 如果调用reject在这里捕捉错误

    })

Promise.all([])

所有请求都成功,返回成功

有一个失败,立即返回失败

// 总体控制
let arr = await Promise.all(
    [
        WebViewNative.Instance().getUserInfo(),
        new Promise((reso, rej) => {
            setTimeout(() => {
                reso("asfdasdf");
            }, 2000);
        })
    ]
)

Promise.any([])

有一个成功,立即返回成功

所有请求都失败,返回失败

Promise.race([])

请求中有不管是谁,先返回成功失败便立即结束,返回些结果。

Promise.reject(reason)/Promise.resolve(value)

返回一个[带有拒绝原因]/[带值]的Promise对象

评论