uni-app封装请求
const BASE_URL="http://localhost:8082"; //开发时使用本地接口,在上线时只需要修改此处接口为线上地址即可
export const myRequest=(options)=>{ //传入的options是一个json对象
return new Promise((resolve,reject)=>{
uni.request({
url:BASE_URL+options.url,
method:options.methods||"GET",
data:options.data || {},
dataType:options.dataType || "json",
success: (res) => {
if(res.data.status !== 0){
return uni.showToast({
title:"获取数据失败"
})
}
resolve(res)
},
fail: (err) => {
uni.showToast({
title:"接口请求失败"
})
reject(err)
}
})
})
}
因为会在不同的页面使用,所以在使用时在全局引入时最好的,只需要引入一次,不需要在每个页面都引入了,所以在main.js中引入
main.js
import Vue from 'vue'
import App from './App'
import { myRequest } from './util/api.js'
Vue.prototype.$myRequest = myRequest //在vue原型中增加一个方法
Vue.config.productionTip = false
App.mpType = 'app'
const app = new Vue({
...App
})
app.$mount()
使用
methods: {
async getSwiper(){
const res = await this.$myRequest({
url:'/api/getlunbo' //各种请求路由在后面拼接就行
})
//这里只需要传入不同的接口地址就可以
console.log(res);
},
}