sts-sponsors team mailing list archive
-
sts-sponsors team
-
Mailing list archive
-
Message #05704
[Merge] ~petermakowski/maas-site-manager:wrap-empty-array-in-useMemo into maas-site-manager:main
Peter Makowski has proposed merging ~petermakowski/maas-site-manager:wrap-empty-array-in-useMemo into maas-site-manager:main.
Commit message:
wrap empty sites array in useMemo
Requested reviews:
MAAS Lander (maas-lander): unittests
MAAS Committers (maas-committers)
For more details, see:
https://code.launchpad.net/~petermakowski/maas-site-manager/+git/site-manager/+merge/438450
--
Your team MAAS Committers is requested to review the proposed merge of ~petermakowski/maas-site-manager:wrap-empty-array-in-useMemo into maas-site-manager:main.
diff --git a/frontend/src/components/SitesList/components/SitesTable.tsx b/frontend/src/components/SitesList/components/SitesTable.tsx
index 1e12a93..ebaf1bb 100644
--- a/frontend/src/components/SitesList/components/SitesTable.tsx
+++ b/frontend/src/components/SitesList/components/SitesTable.tsx
@@ -169,9 +169,11 @@ const SitesTable = ({
);
const [rowSelection, setRowSelection] = useState({});
+ // wrap the empty array in useMemo to avoid re-rendering the empty table on every render
+ const noItems = useMemo<Site[]>(() => [], []);
const table = useReactTable<Site>({
- data: data?.items || [],
+ data: data?.items || noItems,
columns,
state: {
rowSelection,