uniapp封装uni.request请求

封装一个uniapp请求

  • 新建一个http.js文件封装uni.request
const BASE_URL = process.env.NODE_ENV === 'development' ? '' : 'http://localhost:3000'  //开发环境与生还环境的基地址
export const request = (http) => {
	const {
		url,
		data,
		method
	} = http
	return new Promise((resolve, reject) => {
		uni.request({
			url: BASE_URL + url,
			method,
			data,
			success: (res) => {  //请求成功
				if (res.data.code === 0) {  //这里后台返回一个自定义状态码,可根据实际开发情况调整
					resolve(res)
				} else {
					uni.showToast({
						title: '请求数据失败!'
					})
				}
			},
			fail: (err) => { //请求失败
				uni.showToast({
					title: '请求数据失败!'
				})
				reject(err)
			}
		})
	})
}
  • 新建一个mockData.js来封装每个请求
import {
	request
}
from '../utils/http.js'
export const getData = (data) => request({
	url: '/v1/admin',
	method: 'get',
	data
})
  • 实际使用
onLoad() {
    //无参数
    getData().then(res => { 
        this.dataList = res.data.data
    }).catch(err => {
        console.log(err)
    })
    //有参数
    getData({id:2}).then()
},
posted @ 2020-12-29 14:24  baifangzi  阅读(537)  评论(0编辑  收藏  举报