From d7d78a1be534b85ba0d367a790b32c0f4c262f8b Mon Sep 17 00:00:00 2001 From: zhuyue Date: Thu, 2 Sep 2021 18:18:51 +0800 Subject: [PATCH] fix: Fix for select table init & LB listener download 1. fix for select table init 2. fix for lb listener download Change-Id: Idb6840bfbc9c4dc48414f3cfdd57a86f112a9126 --- src/components/FormItem/SelectTable/index.jsx | 13 +++++++------ .../containers/LoadBalancers/Listener/index.jsx | 1 + 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/components/FormItem/SelectTable/index.jsx b/src/components/FormItem/SelectTable/index.jsx index 27e25caf..22a1cef7 100644 --- a/src/components/FormItem/SelectTable/index.jsx +++ b/src/components/FormItem/SelectTable/index.jsx @@ -25,7 +25,7 @@ import styles from './index.less'; const getItemKey = (item) => item.key || item.id; -const getInitRows = (value, datas) => { +const getInitRows = (value, datas, backendPageStore) => { const { selectedRowKeys = [], selectedRows = [] } = value; if (!selectedRowKeys || selectedRowKeys.length === 0) { return []; @@ -36,7 +36,8 @@ const getInitRows = (value, datas) => { } 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 ( item || { key, @@ -150,18 +151,18 @@ export default class SelectTable extends React.Component { } getInitValue(props) { - const { value = {}, initValue = {}, datas = [] } = props; + const { value = {}, initValue = {}, datas = [], backendPageStore } = props; if (!isEmpty(initValue)) { const { selectedRowKeys = [] } = initValue; return { selectedRowKeys, - selectedRows: getInitRows(initValue, datas), + selectedRows: getInitRows(initValue, datas, backendPageStore), }; } const { selectedRowKeys = [] } = value || {}; return { 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)) { const { selectedRowKeys = [] } = initValue; - const selectedRows = getInitRows(initValue, datas); + const selectedRows = getInitRows(initValue, datas, backendPageStore); newState.selectedRowKeys = selectedRowKeys; newState.selectedRows = selectedRows; newState.initValue = initValue; diff --git a/src/pages/network/containers/LoadBalancers/Listener/index.jsx b/src/pages/network/containers/LoadBalancers/Listener/index.jsx index 57f048c9..57938572 100644 --- a/src/pages/network/containers/LoadBalancers/Listener/index.jsx +++ b/src/pages/network/containers/LoadBalancers/Listener/index.jsx @@ -23,6 +23,7 @@ import { actionConfigs, adminActions } from './Actions'; export default class Listeners extends Base { init() { this.store = new ListenerStore(); + this.downloadStore = new ListenerStore(); } updateFetchParamsByPage = (params) => {