封装uniapp request promise化

uniapp request 封装

  • [一、 封装方法](#一、 封装方法)
    • [1. 使用 promis 封装 request](#1. 使用 promis 封装 request)
    • [2. 封装 api 在 api.js](#2. 封装 api 在 api.js)
    • [3.在要请求的页面 调用 api](#3.在要请求的页面 调用 api)

一、 封装方法

1. 使用 promis 封装 request

js 复制代码
const BASE_URL = '你的url接口' //比如  http://198.12.3.3/pz

export function request(config = {}){
	let {
			url,
			data = {},
			method = 'GET',
			header = {},
		} = config
		url = BASE_URL+url
		header['access-key'] = "您的key值"
		header['token'] = '您的toekn值'
		retrun new Promise((resolve, reject) => {
			uni.request({
				url,
				data,
				method,
				header,
				success:(res) =>{
					if(res.data.errCode === 0){
						resolve(res.data)
					}else if(res.data.errCode === 400){
						uni.showModal({
							title:'错误提示',
							content: res.data.errMsg,
							showCancel:false
						})
						resolve(res.data)
					}else{
						uni.showToast({
							title:res.data.errMSg,
							icon:'none'
						})
				},
				fail: (err) =>{
					reject(err)
				}
				
			})
		)
}

2. 封装 api 在 api.js

js 复制代码
	import {request} from '@/util/request'
	export function apiGetOrder(data = {}){
		return request({
			url:'您要拼接的url' //比如/order/list
		})
	}

3.在要请求的页面 调用 api

js 复制代码
		import {apiGetOrder} from '@/api/api.js'
		const getOrder = async () =>{
		let res = await apiGetOrder()
		orderList.value = res.data
		console.log(res.data);
	}

注意

提供的url 都是虚拟

如有错误请告知

如有侵权请带着截图发邮件

邮箱 [email protected]

相关推荐
NightReader2 小时前
Google-chrome版本升级后sogou输入法不工作了
前端·chrome
周山至水数翠峰2 小时前
用网页显示工控仪表
前端
GISer_Jing2 小时前
前端开发 Markdown 编辑器与富文本编辑器详解
前端·javascript
Attacking-Coder2 小时前
前端面试宝典---性能优化
前端·性能优化
renhl2522 小时前
C++11新特性_委托构造函数
java·前端·c++
hylreg2 小时前
xml 和 yaml 的区别
xml·javascript·webpack
Aaaa小嫒同学3 小时前
在spark中配置历史服务器
服务器·javascript·spark
阿珊和她的猫3 小时前
动态指令参数:根据组件状态调整指令行为
前端·javascript·vue.js
xiegwei3 小时前
vue+element 导航 实现例子
前端·javascript·vue.js
露临霜4 小时前
vue实现AI问答Markdown打字机效果
前端·javascript·vue.js·ai·github