跳转到内容

usePagination

usePagination 是基于 useRequest 的分页请求 hook,用于处理分页数据请求

详细使用示例

注意

service 返回数据必须符合 PaginationResponse 分页规范(字段名称必须有:listtotal)。若服务数据格式不兼容,开发者需要封装格式转换函数,或在响应拦截器中强制规范数据格式。

特性

  • 支持useRequest的全部功能
  • 自动管理分页状态
  • 无限滚动
  • pageSize变化后重置分页

类型声明

typescript
function usePagination<
  TData extends PaginationResponse = PaginationResponse,
  TParams extends any[] = any[],
  TFormatData extends PaginationResponse = TData,
  TRawData = any>
(
  service: PaginationServiceFn<TData, TRawData>,
  options?: PaginationAndFetchOptions<TData, TParams, TFormatData, TRawData>,
): PaginationResult<TData, TParams, TFormatData, TRawData>;

相关类型

PaginationResponse

PaginationServiceFn

PaginationAndFetchOptions

PaginationOptions

PaginationResult

泛型

名称默认值继承可选描述
TDataPaginationResponsePaginationResponse数据类型
TParamsany[]any[]函数入参类型
TFormatDataTDataPaginationResponse格式化数据后的类型
TRawDataany原始数据类型

入参

名称类型默认值可选描述
servicePaginationServiceFn<TData, TRawData>-异步函数(必须是通过NormAxios定义的异步函数)
optionsPaginationAndFetchOptions<TData, TParams, TFormatData, TRawData>-配置对象

返回值

PaginationResult<TData, TParams, TFormatData, TRawData>