fix: 保留工作流列表返回状态

- 记录页码、分类和搜索条件并同步到路由

- 从工作流设计页返回时恢复原列表位置
This commit is contained in:
2026-07-31 09:51:21 +08:00
parent 615092f4f7
commit c2ed5a24a3
8 changed files with 386 additions and 9 deletions

View File

@@ -5,6 +5,40 @@ import { describe, expect, it, vi } from 'vitest';
import PageData from './PageData.vue';
describe('page data recovery', () => {
it('loads the restored page and query without requesting the first page', async () => {
const get = vi
.fn()
.mockResolvedValue({ data: { records: [], totalRow: 30 } });
const wrapper = mount(PageData, {
global: {
directives: { loading: {} },
},
props: {
initialPageNumber: 3,
initialQueryParams: { categoryId: '7', title: '月报' },
pageSize: 18,
pageUrl: '/page',
requestClient: { get },
},
});
await flushPromises();
expect(get).toHaveBeenCalledTimes(1);
expect(get).toHaveBeenCalledWith('/page', {
params: {
categoryId: '7',
pageNumber: 3,
pageSize: 18,
title: '月报',
},
});
expect((wrapper.vm as any).getPageState()).toEqual({
pageNumber: 3,
pageSize: 18,
});
});
it('shows a retry action after a page request fails', async () => {
const get = vi
.fn()