提交 6f518341 作者: 郁骅焌

解决多表格三元表达式组件不刷新列问题

上级 833597c2
...@@ -302,8 +302,8 @@ const SageTable = React.forwardRef((props, ref) => { ...@@ -302,8 +302,8 @@ const SageTable = React.forwardRef((props, ref) => {
setColumns(columnsTemp); setColumns(columnsTemp);
}, [columnsProps, tableState, allColumns]); }, [columnsProps, tableState, allColumns]);
useEffect(() => { useEffect(() => {
queryTable();
const columnsTemp = columnsProps ? columnsProps.slice() : [] const columnsTemp = columnsProps ? columnsProps.slice() : []
const hiddenIndex = [] const hiddenIndex = []
columnsTemp.forEach((item, index) => { columnsTemp.forEach((item, index) => {
...@@ -313,6 +313,12 @@ const SageTable = React.forwardRef((props, ref) => { ...@@ -313,6 +313,12 @@ const SageTable = React.forwardRef((props, ref) => {
}) })
setDefaultColumnIndex(hiddenIndex); setDefaultColumnIndex(hiddenIndex);
setAllColumns(columnsTemp); setAllColumns(columnsTemp);
}, [columnsProps])
useEffect(() => {
queryTable();
}, []); }, []);
const tableSearchFormProps = { const tableSearchFormProps = {
......
import React, { useState, useEffect, useRef } from 'react' import React, { useState, useEffect, useRef } from 'react'
import { Table } from 'antd'
import { PageHeaderWrapper } from '@ant-design/pro-layout' import { PageHeaderWrapper } from '@ant-design/pro-layout'
import { SageTable, SageModal, SageButton, SageMessage, ActionSet, SageLayoutLR } from '@/components/Common' import { SageTable, SageModal, SageButton, SageMessage, ActionSet, SageLayoutLR } from '@/components/Common'
import { PlusOutlined, EditOutlined, DeleteOutlined, VerticalAlignBottomOutlined, VerticalAlignTopOutlined } from '@ant-design/icons'; import { PlusOutlined, EditOutlined, DeleteOutlined, VerticalAlignBottomOutlined, VerticalAlignTopOutlined } from '@ant-design/icons';
...@@ -277,10 +278,36 @@ const CrudList = () => { ...@@ -277,10 +278,36 @@ const CrudList = () => {
// toolOptionConfig: ['reload', 'hiddensearch', 'density', 'fullScreen'] // toolOptionConfig: ['reload', 'hiddensearch', 'density', 'fullScreen']
} }
const changeStatus = (value) => {
setStatus(value)
}
return ( return (
<PageHeaderWrapper> <PageHeaderWrapper>
<SageButton onClick={() => changeStatus('add')}>按钮1</SageButton>
<SageButton onClick={() => changeStatus('update')}>按钮2</SageButton>
{
status === '' ?
null : status === 'add' ?
<SageTable
ref={tableRef1}
rowKey='id'
// hasNumber
// hasCheck
columns={columns1}
//request={(params) => queryCrud(params)}
/> : status === 'update' ?
<SageTable
ref={tableRef2}
rowKey='id'
// hasNumber
// hasCheck
columns={columns2}
// request={(params) => queryCrud(params)}
/> : null
}
<div style={{display: 'flex'}}> {/* <div style={{display: 'flex'}}>
<div style={{flex: 1, width: '50%'}}> <div style={{flex: 1, width: '50%'}}>
<SageTable <SageTable
ref={tableRef1} ref={tableRef1}
...@@ -299,7 +326,7 @@ const CrudList = () => { ...@@ -299,7 +326,7 @@ const CrudList = () => {
request={(params) => queryCrud(params)} request={(params) => queryCrud(params)}
/> />
</div> </div>
</div> </div> */}
</PageHeaderWrapper> </PageHeaderWrapper>
) )
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论