From 0e9e2e1dc09aba7c2427a4c635e973da558bf70f Mon Sep 17 00:00:00 2001 From: Soybean Date: Sun, 28 Jan 2024 01:25:04 +0800 Subject: [PATCH] refactor(projects): page manage_role: extract module --- .../advanced/table-header-operation.vue | 69 +++++++++++++++ src/hooks/common/table.ts | 10 +-- src/typings/components.d.ts | 2 + src/views/manage/role/context.ts | 12 +++ src/views/manage/role/index.vue | 85 +++++-------------- src/views/manage/role/role-search.vue | 80 +++++++++++++++++ 6 files changed, 187 insertions(+), 71 deletions(-) create mode 100644 src/components/advanced/table-header-operation.vue create mode 100644 src/views/manage/role/context.ts create mode 100644 src/views/manage/role/role-search.vue diff --git a/src/components/advanced/table-header-operation.vue b/src/components/advanced/table-header-operation.vue new file mode 100644 index 00000000..e76af078 --- /dev/null +++ b/src/components/advanced/table-header-operation.vue @@ -0,0 +1,69 @@ + + + + + diff --git a/src/hooks/common/table.ts b/src/hooks/common/table.ts index b41dcf68..3c0277be 100644 --- a/src/hooks/common/table.ts +++ b/src/hooks/common/table.ts @@ -71,7 +71,7 @@ export function useTable[0]> = reactive(apiParams || {}); + const searchParams: NonNullable[0]> = reactive({ ...apiParams }); const { columns, filteredColumns, reloadColumns } = useTableColumn(config.columns); @@ -125,9 +125,7 @@ export function useTable { - searchParams[key as keyof typeof searchParams] = undefined; - }); + Object.assign(searchParams, apiParams); } if (immediate) { @@ -158,8 +156,8 @@ export function useTable { const { records = [], current = 1, size = 10, total = 0 } = res.data || {}; @@ -90,6 +95,9 @@ const { columns, filteredColumns, data, loading, pagination, getData, searchPara ] }); +// provide searchParams +setupRoleSearchContext(searchParams); + const operateType = ref('add'); function handleAdd() { @@ -135,70 +143,17 @@ function getIndex(index: number) {