hookehuyr

API请求接口封装

import axios from '@/utils/axios';
import { fn } from '@/api/fn';
const Api = {
KG_LIST: '/srv/?a=kg_list', // 幼儿园列表页
}
export const kgListAPI = (params) => fn(axios.get(Api.KG_LIST, { params }))
import axios from '@/utils/axios';
const Api = {
CHANGE_PERFORMER: '/srv/?a=change_performer', // 切换儿童角色
}
export const changePerformerAPI = (params) => axios.post(Api.CHANGE_PERFORMER, params)
import { Toast } from 'vant';
/**
* 网络请求功能函数
* @param {*} api 请求axios接口
* @returns 请求成功后,获取数据
*/
export const fn = (api) => {
return api
.then(res => {
if (res.data.code === 1) {
return res.data.data;
} else {
console.warn(res);
if (!res.data.show) return false;
Toast({
icon: 'close',
message: res.data.msg
});
}
})
.catch(err => {
console.error(err);
})
}
......@@ -14,10 +14,7 @@ import { mainStore } from '@/store'
import RightSideList from '@/components/RightSideList/index.vue'
import { ref } from 'vue';
import axios from '@/utils/axios';
import { useRouter } from 'vue-router'
import { Toast } from 'vant';
const $router = useRouter();
......@@ -39,27 +36,14 @@ const onClick = (item) => {
<script>
import mixin from 'common/mixin'
import { kgListAPI } from '@/api/C/kg.js'
export default {
beforeRouteEnter (to, from, next) {
// 幼儿园列表页
axios.get('/srv/?a=kg_list')
.then(res => {
if (res.data.code === 1) {
to.params.schoolList = res.data.data;
next();
} else {
console.warn(res);
if (!res.data.show) return false;
Toast({
icon: 'close',
message: res.data.msg
});
}
})
.catch(err => {
console.error(err);
})
(async () => {
to.params.schoolList = await kgListAPI();
next();
})()
},
mixins: [mixin.init],
data () {
......
......@@ -91,6 +91,9 @@ import axios from '@/utils/axios';
import $ from 'jquery'
import _ from 'lodash'
import { Toast } from 'vant';
import { changePerformerAPI } from '@/api/C/me.js'
const $route = useRoute();
const $router = useRouter();
......@@ -134,7 +137,7 @@ const onSelect = (item) => {
// 可以通过 close-on-click-action 属性开启自动收起
show.value = false;
// 切换当前角色
axios.post('/srv/?a=change_performer', {
changePerformerAPI({
perf_id: item.id
})
.then(res => {
......