uni-app 封装简易request 全局请求方法

有这样一个简单需求demo,封装接口请求,点击按钮发送请求,获取接口返回的三张图片



1.先在uniapp当前项目根目录创建utils/request.js

在这里插入图片描述

2.封装uni.request请求后导出

	//utils/request.js
 function fetch(options){
	return new Promise((resolve,reject)=>{
		uni.request({
			url:options.url,
			method:options.method,
			data:options.data,
			success(res) {
				resolve(res)
			},
			fail(err) {
				uni.showToast({
					title:'请求异常'
				}),
				reject(err)
			}
		})
	})
}

export {
	fetch
}

3.创建api目录,将项目的所有接口封装在这里导出

//getImgs.js
import {
	fetch
} from "../utils/request.js"

export const  getIMG = function(data) {
	console.log(fetch)
	return fetch({
		url: 'https://api***/******/******/****'
	})
}

4 在对应的页面直接引入api接口调用即可

// pages/index/index.vue
<template>
	<view>
		我是首页
		<view @click="getPhotos">
			点击发请求
		</view>
		<view v-for="(item,index) in list" :key="index" >
			<image :src="item.image_src" mode="scaleToFill"></image>
		</view>
		
	</view>
</template>

<script>
	//引入封装的api请求
	import {getIMG} from '../../apis/getImgs.js'
	export default {
		data() {
			return {
				list: []
			}
		},
		methods: {
			getPhotos() {
				this.getIMG()
				// uni.request({
				// 	url: 'https://api-hmugo-web.itheima.net/api/public/v1/home/swiperdata',
				// 	success:(res) => {
				// 		console.log(res.data.message)
				// 		this.list = res.data.message
				// 	}
				// })
			},
			//发起请求获取后端返回的数据(三张图片)
		 async getIMG(){
			 	console.log('页面开始发请求')
				const res = await getIMG()
				console.log(res)
				this.list = res.data.message
			}
		}
	}
</script>

在这里插入图片描述

思路参考来自B站

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值