From 74d81658340f681bf0e0ca7715174d2f726a2279 Mon Sep 17 00:00:00 2001 From: "Jingwei.Zhang" Date: Thu, 19 Aug 2021 11:03:25 +0800 Subject: [PATCH] fix: Fix hint in List Fix hint render in BaseList component Change-Id: I57ee116bfc94dbe64bea66e9b9d13912cb95ab52 --- src/containers/List/index.jsx | 25 +++++++++++++++++-- .../containers/Network/Detail/Subnets.jsx | 1 - 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/src/containers/List/index.jsx b/src/containers/List/index.jsx index 66d12d19..e25eef4e 100644 --- a/src/containers/List/index.jsx +++ b/src/containers/List/index.jsx @@ -49,6 +49,7 @@ export default class BaseList extends React.Component { filters: {}, timeFilter: {}, autoRefresh: true, + newHints: false, }; this.dataTimerTransition = null; @@ -711,7 +712,7 @@ export default class BaseList extends React.Component { } else { this.setRefreshdataTimerAuto(); } - this.updateHints(datas); + this.updateHintsByDatas(datas); return datas; }; @@ -862,7 +863,17 @@ export default class BaseList extends React.Component { onCloseSuccessHint = () => {}; // eslint-disable-next-line no-unused-vars - updateHints(datas) {} + updateHintsByOthers() { + if (this.updateHints) { + this.updateHints(); + this.setState({ + newHints: true, + }); + } + } + + // eslint-disable-next-line no-unused-vars + updateHintsByDatas(datas) {} init() { this.store = { list: {} }; @@ -1048,6 +1059,16 @@ export default class BaseList extends React.Component { } renderHint() { + const { newHints } = this.state; + if ( + !newHints && + !this.infoMessage && + !this.warnMessage && + !this.successMessage && + !this.errorMessage + ) { + return null; + } return (
{this.renderInfoHint()} diff --git a/src/pages/network/containers/Network/Detail/Subnets.jsx b/src/pages/network/containers/Network/Detail/Subnets.jsx index 80ca5b25..f54f7579 100644 --- a/src/pages/network/containers/Network/Detail/Subnets.jsx +++ b/src/pages/network/containers/Network/Detail/Subnets.jsx @@ -50,7 +50,6 @@ export default class Subnets extends Base { } else { this.setRefreshdataTimerAuto(); } - this.updateHints(datas); const ret = datas.map((item) => { const usageDetail = this.subnet_ip_availability.find( (i) => i.subnet_id === item.id