React 实现请求接口封装

接口封装

一、正常接口请求

java 复制代码
useEffect(()=>{
	//获取下拉数据
	async function fetchDateWrapper() {
	try{
		const res = await 接口();
		console.log("res",res.data);
		const value = res.data.map(item ={
			return { label: item.valueName,value:valueCode }
		});
		setData(value);
		console.log("aaa",value);
	} catch (error) {
	
	} finally {
	
	}
	fetchDateWrapper();
},[])

二、antd组件请求封装

java 复制代码
 request={async (params) => {
 	const { current: pageNum, pageSize, ...otherParams } = params;
    if(otherParams?.yearMonth){
    	otherParams.beginDate=dayjs(otherParams?.yearMonth[0]).format('YYYY-MM')
        otherParams.endDate=dayjs(otherParams?.yearMonth[1]).format('YYYY-MM')
     }
    console.log('查询机构提交参数', {
        pageCurrent: pageNum,
        pageSize,
        ...otherParams,
    });
    //return []
    let {
        data,
        success,
    } = await pageQry({
        pageCurrent: pageNum,
        pageSize,
        ...otherParams,
    });
    console.log("data", data)
    console.log("data.pageInfo.records", data.pageInfo.records)
    let aaa = data.pageInfo.records
    const bbb = aaa.map((item: any, index: number) => {
        // console.log("itemitemitemitem", item)
        item.no = Number(pageSize) * (Number(pageNum) - 1) + index + 1;
        return { ...item };
    });
    setDataSourceS(bbb)
    return {
        // data: dataSource,
        success,
        total: data.pageInfo.total,
    };
 }}

出自 申创衡金科技网络有限公司

相关推荐
Rsun045519 小时前
React相关面试题
前端·react.js·前端框架
Lao乾妈官方认证唯一女友:D9 小时前
通过plasmo的wallet扩展添加新钱包
javascript·web3·区块链
ALKAOUA9 小时前
力扣面试150题刷题分享
javascript·笔记
鹏多多.9 小时前
Flutter使用screenshot进行截屏和截长图以及分享保存的全流程指南
android·前端·flutter·ios·前端框架
LawrenceLan9 小时前
37.Flutter 零基础入门(三十七):SnackBar 与提示信息 —— 页面反馈与用户交互必学
开发语言·前端·flutter·dart
迪巴拉15259 小时前
基于Vue与Spring Boot+Open Cv的智慧校园考勤系统
前端·vue.js·spring boot
swipe9 小时前
JavaScript 对象与属性描述符:从原理到实战
前端·javascript·面试
&活在当下&9 小时前
Vue3 h函数用法详解
前端·javascript·vue.js