From 27a59653149b86ff3d7948532eadae1082b18b78 Mon Sep 17 00:00:00 2001 From: Fernando Hoyos <122779323+ferhoyos@users.noreply.github.com> Date: Wed, 3 Apr 2024 19:07:29 +0200 Subject: [PATCH] Initialize error on namespace switch (#290) (#291) --- plugin/src/openshift/pages/IstioConfigListPage.tsx | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/plugin/src/openshift/pages/IstioConfigListPage.tsx b/plugin/src/openshift/pages/IstioConfigListPage.tsx index ded280b1..0db5aabb 100644 --- a/plugin/src/openshift/pages/IstioConfigListPage.tsx +++ b/plugin/src/openshift/pages/IstioConfigListPage.tsx @@ -165,8 +165,8 @@ const newIstioResourceList = { const IstioConfigListPage: React.FC = () => { const { ns } = useParams<{ ns: string }>(); const [loaded, setLoaded] = React.useState(false); - const [listItems, setListItems] = React.useState([]); - const [loadError, setLoadError] = React.useState(); + const [listItems, setListItems] = React.useState([]); + const [loadError, setLoadError] = React.useState(null); const history = useHistory(); const promises = React.useMemo(() => new PromisesRegistry(), []); @@ -221,6 +221,10 @@ const IstioConfigListPage: React.FC = () => { }; React.useEffect(() => { + // initialize page + setLoaded(false); + setLoadError(null); + fetchIstioConfigs() .then(istioConfigs => { const istioConfigObjects = istioConfigs.map(istioConfig => { @@ -232,11 +236,12 @@ const IstioConfigListPage: React.FC = () => { }); setListItems(istioConfigObjects); - setLoaded(true); }) .catch(error => { setLoadError({ title: error.response.statusText, message: error.response.data.error }); - return []; + }) + .finally(() => { + setLoaded(true); }); }, [ns, fetchIstioConfigs]);