用户管理和分配管理:分页按钮优化,支持切换每页条数并持久化

This commit is contained in:
yml2213
2026-06-24 20:24:04 +08:00
parent 4a38b06192
commit 09f9ab7165
2 changed files with 39 additions and 2 deletions
+20 -1
View File
@@ -24,6 +24,11 @@ export default function AssignmentsPage() {
const [filterTag, setFilterTag] = useState<string | undefined>(undefined);
const [activeTab, setActiveTab] = useState('unassigned');
const [assigning, setAssigning] = useState(false);
const [pageSize, setPageSize] = useState(() => {
const v = localStorage.getItem('assignment_page_size');
return v ? Number(v) || 15 : 15;
});
const [currentPage, setCurrentPage] = useState(1);
// 加载分配概览
const loadSummary = async () => {
@@ -382,7 +387,21 @@ export default function AssignmentsPage() {
dataSource={displayAccounts}
rowKey="id"
size="small"
pagination={{ pageSize: 15, size: 'small', showSizeChanger: true, showTotal: (t) => `${t}` }}
pagination={{
current: currentPage,
pageSize,
size: 'small',
showSizeChanger: true,
showTotal: (t) => `${t}`,
onChange: (page, size) => {
setCurrentPage(page);
if (size !== pageSize) {
setPageSize(size);
localStorage.setItem('assignment_page_size', String(size));
setCurrentPage(1); // 切换 pageSize 时重置到第1页
}
},
}}
rowSelection={{
selectedRowKeys,
onChange: (keys) => setSelectedRowKeys(keys as number[]),
+19 -1
View File
@@ -41,6 +41,11 @@ export default function UsersPage() {
const [modalOpen, setModalOpen] = useState(false);
const [editing, setEditing] = useState<UserInfo | null>(null);
const [form] = Form.useForm();
const [pageSize, setPageSize] = useState(() => {
const v = localStorage.getItem('user_page_size');
return v ? Number(v) || 20 : 20;
});
const [currentPage, setCurrentPage] = useState(1);
// 权限管理
const [permModalOpen, setPermModalOpen] = useState(false);
@@ -222,7 +227,20 @@ export default function UsersPage() {
rowKey="id"
loading={loading}
size="small"
pagination={{ pageSize: 20 }}
pagination={{
current: currentPage,
pageSize,
showSizeChanger: true,
showTotal: (t) => `${t}`,
onChange: (page, size) => {
setCurrentPage(page);
if (size !== pageSize) {
setPageSize(size);
localStorage.setItem('user_page_size', String(size));
setCurrentPage(1); // 切换 pageSize 时重置到第1页
}
},
}}
/>
{/* 编辑/新建用户 Modal */}