uniapp云开发请求封装

云开发中请求中对于对多个云函数的大段重复逻辑,还是很有必要封装一下的 

uniapp云开发请求封装_第1张图片

大概这样的目录 

 

apis 目录  2 file 

index.js
import http from '../http.js'

export const holy = async()=>{
	return http({url:'holy-test'})
}


main.js
import http from '../http.js'

export  const heil = async ()=>{
	return http({url:'heil-test'})
}


*******

http.js

export default ({url,data})=>{
	return new Promise((reslove,reject)=>{
		uniCloud.callFunction({
			name:url,
			data,
			success:(res)=>{
				reslove(res)
			},
			fail:(e)=>{
				reject(e)
			}
		})
	})
}


********

api.js 


// 批量引入文件

const requestApi = require.context('./apis',false, /.js$/);

let modules = {}

requestApi.keys().forEach((key)=>{
	 // requestApi本身是个方法 调用自身的key属性
	 console.log(requestApi(key))
	modules = {...modules,...requestApi(key)}
})

export default modules

 

调用 

import requestApi from '@/service/api.js'
	console.dir(requestApi)


onLoad() {
			requestApi.heil().then(res=>{
				console.log(res)
			})
		},

 

你可能感兴趣的:(uniapp云开发请求封装)