perf: 修复内置插件分页查询逻辑

- 在前端添加 lastType 变量,用于判断类型变化并重置分页偏移量
- 在后端修改内置插件查询逻辑,支持分页请求
- 优化后端返回数据结构,使其与前端请求一致
pull/373/head
xiaojunnuo 2025-04-13 01:27:52 +08:00
parent 70101bfa7a
commit a2710ddc25
2 changed files with 18 additions and 3 deletions

View File

@ -10,7 +10,14 @@ import yaml from "js-yaml";
export default function ({ crudExpose, context }: CreateCrudOptionsProps): CreateCrudOptionsRet {
const router = useRouter();
const { t } = useI18n();
let lastType = "";
const pageRequest = async (query: UserPageQuery): Promise<UserPageRes> => {
if (lastType && lastType != query?.query?.type) {
//lastType有变化
query.page.offset = 0;
}
lastType = query?.query?.type;
return await api.GetList(query);
};
const editRequest = async ({ form, row }: EditReq) => {

View File

@ -33,13 +33,21 @@ export class PluginService extends BaseService<PluginEntity> {
if (pageReq.query.type && pageReq.query.type !== "builtIn") {
return await super.page(pageReq);
}
//仅查询内置插件
const offset = pageReq.page.offset;
const limit = pageReq.page.limit;
const builtInList = await this.getBuiltInEntityList();
//获取分页数据
const data = builtInList.slice(offset, offset + limit);
return {
records: builtInList,
records: data,
total: builtInList.length,
offset: 0,
limit: 99999
offset: offset,
limit: limit
};
}