From 56af7c922191714fb889195be1bc97b080cda6ad Mon Sep 17 00:00:00 2001 From: monkindey Date: Tue, 23 Nov 2021 10:55:55 +0800 Subject: [PATCH] fixed https://github.com/ahooksjs/useTable/issues/28 --- packages/use-table/__tests__/plugin.test.ts | 30 +++++++++++++++++++++ packages/use-table/src/config.ts | 2 +- 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/packages/use-table/__tests__/plugin.test.ts b/packages/use-table/__tests__/plugin.test.ts index 9e61595..3764328 100644 --- a/packages/use-table/__tests__/plugin.test.ts +++ b/packages/use-table/__tests__/plugin.test.ts @@ -197,4 +197,34 @@ describe('useTable#plugin', () => { expect((result.current as any).name).toEqual('foo'); expect((result.current as any).title).toEqual(undefined); }); + + it('transformer', async () => { + const dataSource = [{ name: 'ahooks' }]; + const TOTAL = 25; + const usePlugin = () => { + return { + middlewares: (ctx, next) => { + ctx.params.test = 1; + return next(); + }, + props: () => ({ + name: 'foo', + }), + }; + }; + + const { waitForNextUpdate } = renderHook(() => { + const plugin = usePlugin(); + return useTable(() => service({ dataSource, total: TOTAL }), { + transformer: (p) => { + expect(p).toEqual({ current: 1, pageSize: 20, test: 1 }); + return { ...p }; + }, + plugins: [plugin], + }); + }); + + await waitForNextUpdate(); + await waitForNextUpdate(); + }); }); diff --git a/packages/use-table/src/config.ts b/packages/use-table/src/config.ts index cba09c6..485a1c4 100644 --- a/packages/use-table/src/config.ts +++ b/packages/use-table/src/config.ts @@ -6,7 +6,7 @@ export const YOUR_TURN = 'yourTurn'; export const QUERYING = 'querying'; export const DID_QUERY = 'didQuery'; -export const timelines = [DID_RENDER, WILL_QUERY, WILL_TRANSFORM, YOUR_TURN, QUERYING, DID_QUERY]; +export const timelines = [DID_RENDER, WILL_QUERY, YOUR_TURN, WILL_TRANSFORM, QUERYING, DID_QUERY]; export const defaults = { current: 1, pageSize: 20 }; export const methods = { ON_REFRESH_DEPS: 'onRefreshDeps',