根据接口规范封装网络请求和全局状态管理
封装通用页面接口网络请求
axios (request)封装见:https://blog.csdn.net/XiugongHao/article/details/143449863
/*** 封装通用页面的增删改查接口*/
export function postPageListData(pageName: string, queryInfo: any) {return request.post({url: `/${pageName}/list`,data: queryInfo})
}export function deletePageById(pageName: string, id: number) {return request.delete({url: `/${pageName}/${id}`})
}export function newPageData(pageName: string, pageInfo: any) {return request.post({url: `/${pageName}`,data: pageInfo})
}export function editPageData(pageName: string, id: number, pageInfo: any) {return request.patch({url: `/${pageName}/${id}`,data: pageInfo})
}
封装通用页面全局状态管理
/*** 封装通用页面的增删改查*/async postPageListAction(pageName: string, queryInfo: any) {const pageListResult = await postPageListData(pageName, queryInfo);const { totalCount, list } = pageListResult?.data;this.pageList = list;this.pageTotalCount = totalCount;},async deletePageByIdAction(pageName: string, id: number) {const deleteResult = await deletePageById(pageName, id);this.postPageListAction(pageName, { offset: 0, size: 10 });},async newPageDataAction(pageName: string, pageInfo: any) {const newResult = await newPageData(pageName, pageInfo);this.postPageListAction(pageName, { offset: 0, size: 10 })},async editPageDataAction(pageName: string, id: number, pageInfo: any) {const editResult = await editPageData(pageName, id, pageInfo);this.postPageListAction(pageName, { offset: 0, size: 10 })},}