From 6affba2d4015f8c9b6786317e320ea17d2bc7fd9 Mon Sep 17 00:00:00 2001 From: Alexey Date: Fri, 25 Aug 2023 18:39:52 +0300 Subject: [PATCH] CB-3889 fix: useResource sync (#1957) Co-authored-by: EvgeniaBzzz <139753579+EvgeniaBzzz@users.noreply.github.com> --- .../src/ResourcesHooks/useResource.ts | 26 ++++++++++++++----- 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/webapp/packages/core-blocks/src/ResourcesHooks/useResource.ts b/webapp/packages/core-blocks/src/ResourcesHooks/useResource.ts index 23bf5f23e0..880ba1a5e3 100644 --- a/webapp/packages/core-blocks/src/ResourcesHooks/useResource.ts +++ b/webapp/packages/core-blocks/src/ResourcesHooks/useResource.ts @@ -462,12 +462,26 @@ export function useResource< }; }, []); - useEffect(() => { - refObj.use(key); - if (result.canLoad && !result.isError()) { - result.load(); - } - }, [result.canLoad]); + useEffect( + () => + reaction( + () => ({ + canLoad: result.canLoad, + loadKey: propertiesRef.key, + }), + ({ canLoad, loadKey }) => { + refObj.use(loadKey); + if (canLoad && !result.isError()) { + result.load(); + } + }, + { + fireImmediately: true, + delay: 100, + }, + ), + [], + ); if (actions?.forceSuspense) { result.data;