提交 4714f1a6 作者: 郁骅焌

table修改check

上级 6f518341
......@@ -31,6 +31,7 @@ const initState = {
* 9、onContextMenuRow
* 10、toolOptionConfig
* 11、hiddeTool 隐藏工具栏
* 12、isCacheCheck 是否缓存选中状态
* 表格工具['reload', 'hiddensearch', 'density', 'fullScreen', 'setting']
*/
const SageTable = React.forwardRef((props, ref) => {
......@@ -40,6 +41,9 @@ const SageTable = React.forwardRef((props, ref) => {
// 选中keys rows
const [selectedRowKeys, setSelectedRowKeys] = useState([]);
const [selectedRows, setSelectedRows] = useState([]);
// 缓存选中selectedRowKeys、selectedRows
const [cacheSelectedRowKeys, setCacheSelectedRowKeys] = useState([]);
const [cacheSelectedRows, setCacheSelectedRows] = useState([]);
// 展开keys
const [expandedRowKeys, setExpandedRowKeys] = useState([]);
......@@ -70,6 +74,7 @@ const SageTable = React.forwardRef((props, ref) => {
onContextMenuRow: onContextMenuRowProps,
expandable: expandableProps,
defaultExpandAllRows: defaultExpandAllRowsProps,
isCacheCheck = false,
// 搜索相关
searchFields: searchFieldsProps,
onSearchTable: onSearchTableProps,
......@@ -196,6 +201,11 @@ const SageTable = React.forwardRef((props, ref) => {
tableParams.sortOrder = sorter.order === 'ascend' ? 'asc' : 'desc';
}
if (isCacheCheck) {
setCacheSelectedRowKeys(selectedRowKeys.slice())
setCacheSelectedRows(selectedRows.slice())
}
queryTable(tableParams, 'change');
};
......@@ -337,8 +347,14 @@ const SageTable = React.forwardRef((props, ref) => {
type: selectionType,
onChange: (selectedrowkeys, selectedrows) => {
// console.log(`selectedRowKeys: ${selectedrowkeys}`, 'selectedRows: ', selectedrows);
setSelectedRowKeys(selectedrowkeys);
setSelectedRows(selectedrows);
let lastSelectedRowKeys = selectedrowkeys.slice()
let lastSelectedRows = selectedrows.slice()
if (isCacheCheck) {
lastSelectedRowKeys = lastSelectedRowKeys.concat(cacheSelectedRowKeys)
lastSelectedRows = selectedrows.concat(cacheSelectedRows)
}
setSelectedRowKeys(lastSelectedRowKeys);
setSelectedRows(lastSelectedRows);
},
};
......
......@@ -392,14 +392,15 @@ const CrudList = () => {
hasCheck: true,
columns,
scroll: { x: '100vw' },
rowSelection: {
onChange: (selectedrowkeys, selectedrows) => {
tableRef.current.setSelectedRowKeys(selectedrowkeys)
tableRef.current.setSelectedRows(selectedrows)
setEditable(selectedrowkeys.length !== 1)
setRemoveable(selectedrowkeys.length === 0)
}
}
isCacheCheck: true
// rowSelection: {
// onChange: (selectedrowkeys, selectedrows) => {
// tableRef.current.setSelectedRowKeys(selectedrowkeys)
// tableRef.current.setSelectedRows(selectedrows)
// setEditable(selectedrowkeys.length !== 1)
// setRemoveable(selectedrowkeys.length === 0)
// }
// }
}
// 新建按钮
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论