封装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 都是虚拟

如有错误请告知

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

邮箱 1413229255@qq.com

相关推荐
小赵同学WoW10 分钟前
1-2 TypeScript 中的 `any` 与 `unknown`
前端
six_21 分钟前
C# 上位机(持续更新中)
前端·面试·c#
风雨_21 分钟前
Git Worktree sourcetree完整使用指南
前端
半个落月35 分钟前
React 组件通信进阶:useContext 与自定义 Hook 实战详解
前端·react.js
MgArcher40 分钟前
抖音a_bogus参数逆向实战:JSVMP环境模拟与Hook技术(2025最新)
javascript·爬虫·python
用户9210802628643 分钟前
ChatComposer 输入区改造:基于技能市场实现 Agent 输入框
前端
用户45989204565161 小时前
一套 KMP 多仓库版本治理工作流:用 Version Catalog + CI 把发版流水线自动化
前端·kotlin
小赵同学WoW1 小时前
1-4 TypeScript 中的 `number`、`bigint` 与 `string`
前端
小赵同学WoW1 小时前
1-3 `boolean` 与字面量类型
前端
光影少年1 小时前
react navite 长列表优化:FlatList / SectionList 原理与优化属性
前端·react native·react.js