This commit is contained in:
2025-05-12 19:45:27 +08:00
parent 2e9c403632
commit ce0587d2b6
47 changed files with 1355 additions and 310 deletions

View File

@@ -16,9 +16,14 @@ function useTableQuery({
watchParameter = false,
}) {
const loading = ref(false);
const vo = reactive({
rows: [],
page: 0,
total: 0,
});
const pagination = reactive({
current: 1,
page: 1,
pageSize: 20,
total: 0
});
@@ -29,7 +34,7 @@ function useTableQuery({
const params = {
...parameter,
current: pagination.current,
page: pagination.page,
pageSize: pagination.pageSize
}
@@ -38,34 +43,39 @@ function useTableQuery({
pagination.pageSize = data.page;
pagination.total = data.total;
callback && callback({
const _vo = {
...data,
rows: data.rows.map(v => ({...v, key: v.id})),
current: pagination.current
});
rows: data.list.map(v => ({...v, key: v.id})),
};
vo.page = _vo.page;
vo.total = _vo.total;
vo.rows = [...vo.rows, ..._vo.rows];
callback && callback(vo);
} finally {
loading.value = false;
}
}
const initFetchData = async () => {
if (pagination.current === 1) {
fetchData().then();
} else {
pagination.current = 1;
pagination.total = 0;
}
pagination.page = 1;
pagination.total = 0;
vo.page = 0;
vo.total = 0;
vo.rows.length = 0;
await fetchData();
}
watch(
() => [pagination.current, pagination.pageSize],
() => [pagination.page, pagination.pageSize],
() => fetchData(),
{deep: true, immediate: immediate}
)
if (watchParameter) watch(
() => parameter,
() => initFetchData(),
() => fetchData(),
{deep: true}
);