Toggle navigation
Toggle navigation
This project
Loading...
Sign in
Hooke
/
data-table
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Graphs
Network
Create a new issue
Commits
Issue Boards
Authored by
hookehuyr
2025-11-27 17:13:17 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
9a7c7da838d3a19fee778f089b0103d80cf3d97a
9a7c7da8
1 parent
53960082
refactor(分页): 调整分页构建逻辑,无分页控件时不启用分页
移除按固定大小分片的兜底逻辑,确保无分页控件时不显示分页组件
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
12 additions
and
10 deletions
README.md
src/composables/usePagination.js
README.md
View file @
9a7c7da
...
...
@@ -18,3 +18,4 @@
- `onFailed` 时清除该标记,避免误判后续提交动作。
- `index.vue` 在 `onSubmit` 顶部拦截“下一页意图”,短路真实提交,仅做翻页与状态重置。
- 保持分页最后一页提示与按钮颜色逻辑同步。
- 分页构建逻辑调整:当表单中不存在 `paginator` 控件时不启用分页,移除按固定大小(8个字段)分片的兜底逻辑,确保无分页控件时不显示分页组件。
...
...
src/composables/usePagination.js
View file @
9a7c7da
...
...
@@ -109,17 +109,18 @@ export function usePagination(formDataRef, options = {}) {
navs
.
push
(
normalizePaginatorProps
())
}
//
若未显式分页,仅按固定大小分片,并为每一页设置默认导航
if
(
pages
.
length
<=
1
)
{
const
size
=
8
const
keys
=
formDataRef
.
value
.
filter
(
i
=>
i
.
component_props
?.
tag
!==
'paginator'
).
map
(
i
=>
i
.
key
)
const
chunked
=
[]
for
(
let
i
=
0
;
i
<
keys
.
length
;
i
+=
size
)
{
chunked
.
push
(
keys
.
slice
(
i
,
i
+
size
)
)
}
pages_raw
.
value
=
chunked
.
length
?
chunked
:
[
keys
]
page_nav_props_by_index
.
value
=
(
chunked
.
length
?
chunked
:
[
keys
]).
map
(()
=>
normalizePaginatorProps
())
//
无显式分页符时,不启用分页(单页展现,不再进行固定大小分片)
// 这样可确保没有 paginator 控件时,分页组件不会显示
const
has_paginator
=
formDataRef
.
value
.
some
(
i
=>
i
.
component_props
?.
tag
===
'paginator'
)
if
(
!
has_paginator
)
{
const
keys
=
formDataRef
.
value
.
filter
(
i
=>
i
.
component_props
?.
tag
!==
'paginator'
)
.
map
(
i
=>
i
.
key
)
pages_raw
.
value
=
[
keys
]
// 单页仍提供默认导航配置,供最后页按钮样式读取,但不会显示分页组件
page_nav_props_by_index
.
value
=
[
normalizePaginatorProps
()]
}
else
{
// 有分页符时按分组结果设置
pages_raw
.
value
=
pages
page_nav_props_by_index
.
value
=
navs
}
...
...
Please
register
or
login
to post a comment