fix: Fix for select table init & LB listener download

1. fix for select table init
2. fix for lb listener download

Change-Id: Idb6840bfbc9c4dc48414f3cfdd57a86f112a9126
This commit is contained in:
zhuyue 2021-09-02 18:18:51 +08:00
parent 1d675b4362
commit d7d78a1be5
2 changed files with 8 additions and 6 deletions

View File

@ -25,7 +25,7 @@ import styles from './index.less';
const getItemKey = (item) => item.key || item.id; const getItemKey = (item) => item.key || item.id;
const getInitRows = (value, datas) => { const getInitRows = (value, datas, backendPageStore) => {
const { selectedRowKeys = [], selectedRows = [] } = value; const { selectedRowKeys = [], selectedRows = [] } = value;
if (!selectedRowKeys || selectedRowKeys.length === 0) { if (!selectedRowKeys || selectedRowKeys.length === 0) {
return []; return [];
@ -36,7 +36,8 @@ const getInitRows = (value, datas) => {
} }
const rows = selectedRowKeys.map((key) => { const rows = selectedRowKeys.map((key) => {
const item = (datas || []).find((it) => getItemKey(it) === key); const findSourceData = !backendPageStore ? datas : selectedRows;
const item = (findSourceData || []).find((it) => getItemKey(it) === key);
return ( return (
item || { item || {
key, key,
@ -150,18 +151,18 @@ export default class SelectTable extends React.Component {
} }
getInitValue(props) { getInitValue(props) {
const { value = {}, initValue = {}, datas = [] } = props; const { value = {}, initValue = {}, datas = [], backendPageStore } = props;
if (!isEmpty(initValue)) { if (!isEmpty(initValue)) {
const { selectedRowKeys = [] } = initValue; const { selectedRowKeys = [] } = initValue;
return { return {
selectedRowKeys, selectedRowKeys,
selectedRows: getInitRows(initValue, datas), selectedRows: getInitRows(initValue, datas, backendPageStore),
}; };
} }
const { selectedRowKeys = [] } = value || {}; const { selectedRowKeys = [] } = value || {};
return { return {
selectedRowKeys, selectedRowKeys,
selectedRows: getInitRows(value || {}, datas), selectedRows: getInitRows(value || {}, datas, backendPageStore),
}; };
} }
@ -195,7 +196,7 @@ export default class SelectTable extends React.Component {
} }
if (!isEqual(initValue, prevState.initValue)) { if (!isEqual(initValue, prevState.initValue)) {
const { selectedRowKeys = [] } = initValue; const { selectedRowKeys = [] } = initValue;
const selectedRows = getInitRows(initValue, datas); const selectedRows = getInitRows(initValue, datas, backendPageStore);
newState.selectedRowKeys = selectedRowKeys; newState.selectedRowKeys = selectedRowKeys;
newState.selectedRows = selectedRows; newState.selectedRows = selectedRows;
newState.initValue = initValue; newState.initValue = initValue;

View File

@ -23,6 +23,7 @@ import { actionConfigs, adminActions } from './Actions';
export default class Listeners extends Base { export default class Listeners extends Base {
init() { init() {
this.store = new ListenerStore(); this.store = new ListenerStore();
this.downloadStore = new ListenerStore();
} }
updateFetchParamsByPage = (params) => { updateFetchParamsByPage = (params) => {