uniapp封裝一個公共請求方法


1、項目更目錄下新建common文件夾,再創建request.js文件

2、打開request.js文件,開始寫封裝的代碼

const request = (url = '', date = {}, titles = '加載中',type = 'POST', header = {
}) => {
    return new Promise((resolve, reject) => {
		uni.showLoading({
			title: titles
		});
        uni.request({
            method: type,
            url: url,
            data: date,
            header: header,
            dataType: 'json',         
        }).then((response) => {
			uni.hideLoading();
			uni.stopPullDownRefresh();
            let [error, res] = response; 
			if(res.data.code == 0){
				uni.showToast({
				    title:res.data.msg,
				    duration: 1000,
					success:function(){
						uni.hideLoading();
					}
				});
				setTimeout(function () {
					resolve(res.data);
				}, 1000);
			}else if(res.data.code == 1){
				uni.showToast({
				    title:res.data.msg.MSG,
					image:'../../static/public/guanbi_i.png',
				    duration: 2000,
					success:function(){
						uni.hideLoading();
					}
				});
			}else {
				uni.showToast({
				    title:res.data.msg,
					image:'../../static/public/guanbi_i.png',
				    duration: 2000,
					success:function(){
						uni.hideLoading();
					}
				});
			}
        }).catch(error => {
			uni.hideLoading();
			uni.stopPullDownRefresh();
            let [err, res] = error;
            reject(err)
        })
    });
}
export default request
3、在main.js全局注冊
import request from 'common/request.js'
Vue.prototype.$request = request
4、頁面調用
this.$request('url地址', {
	//參數放在這里
	'id':1,
}).then(res => {
	// 打印調用成功回調 
	console.log('返回正確回調')
})

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM