uni-app封装promise,仅提供post,all,spread方法


简单封装一下 uni-app 的请求,因为项目中只用 post 请求,所以只封装了 postall 方法。

更新,新增 spread 方法  2019-11-22 10:37:21

global.http = {
        timer: null,
        beenLoginPage: false,
        post: (url, data, loading) => {
            if (loading) {
                uni.showLoading({
                    mask: true
                })
            }
            return new Promise((resolve, reject) => {
                uni.request({
                    url: BaseUrl + url,
                    method: "POST",
                    header: {
                        sessid: getSessid()
                    },
                    data,
                    success: res => {
                        if (loading) {
                            uni.hideLoading();
                        }
                        resolve(res.data);
                    },
                    fail(err) {
                        if (loading) {
                            uni.hideLoading();
                        }
                        reject(err);
                    }
                })
            })

        },
        all: (promise) => {
            return Promise.all(promise);
        },
        spread: function(callback) {
            return function wrap(arr) {
                callback.apply(null, arr);
            };
        }
    }

你可能感兴趣的:(uni-app封装promise,仅提供post,all,spread方法)