fix: reset update instance list flag

This commit is contained in:
jialin
2025-01-17 23:39:10 +08:00
parent 04d35a3a83
commit 47ced11e03
2 changed files with 17 additions and 2 deletions
+17 -1
View File
@@ -144,6 +144,7 @@ const Models: React.FC<ModelsProps> = ({
defaultSortOrder: 'descend' defaultSortOrder: 'descend'
}); });
const updateRef = useRef(false);
const [openLogModal, setOpenLogModal] = useState(false); const [openLogModal, setOpenLogModal] = useState(false);
const [openAddModal, setOpenAddModal] = useState(false); const [openAddModal, setOpenAddModal] = useState(false);
const [openDeployModal, setOpenDeployModal] = useState<any>({ const [openDeployModal, setOpenDeployModal] = useState<any>({
@@ -673,10 +674,11 @@ const Models: React.FC<ModelsProps> = ({
const renderChildren = useCallback( const renderChildren = useCallback(
(list: any, parent?: any) => { (list: any, parent?: any) => {
let childList = list; let childList = list;
if (allInstances.length) { if (allInstances.length && !updateRef.current) {
childList = list.filter((item: any) => { childList = list.filter((item: any) => {
return allInstances.some((instance) => instance.id === item.id); return allInstances.some((instance) => instance.id === item.id);
}); });
updateRef.current = true;
} }
return ( return (
<InstanceItem <InstanceItem
@@ -744,6 +746,20 @@ const Models: React.FC<ModelsProps> = ({
} }
}; };
useEffect(() => {
const handleVisibilityChange = async () => {
if (document.visibilityState === 'hidden') {
updateRef.current = false;
}
};
document.addEventListener('visibilitychange', handleVisibilityChange);
return () => {
document.removeEventListener('visibilitychange', handleVisibilityChange);
};
}, []);
return ( return (
<> <>
<PageContainer <PageContainer
-1
View File
@@ -80,7 +80,6 @@ const Models: React.FC = () => {
const data: any = await queryModelsInstances(params, { const data: any = await queryModelsInstances(params, {
token: instancesToken.current?.token token: instancesToken.current?.token
}); });
console.log('instance====', data);
setAllInstances(data.items || []); setAllInstances(data.items || []);
} catch (error) { } catch (error) {
// ignore // ignore