From eb07e9d6d438db351d8b0974d347b276f20df9a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Lorber?= Date: Fri, 19 Apr 2024 13:13:52 +0200 Subject: [PATCH] refactor(core): optimize App entrypoint, it should not re-render when navigating (#10060) --- packages/docusaurus/src/client/App.tsx | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/packages/docusaurus/src/client/App.tsx b/packages/docusaurus/src/client/App.tsx index 3a93ec6524..e235fb3556 100644 --- a/packages/docusaurus/src/client/App.tsx +++ b/packages/docusaurus/src/client/App.tsx @@ -25,9 +25,19 @@ import SiteMetadataDefaults from './SiteMetadataDefaults'; import ErrorBoundary from '@docusaurus/ErrorBoundary'; import HasHydratedDataAttribute from './hasHydratedDataAttribute'; -export default function App(): JSX.Element { - const routeElement = renderRoutes(routes); +const routesElement = renderRoutes(routes); + +function AppNavigation() { const location = useLocation(); + const normalizedLocation = normalizeLocation(location); + return ( + + {routesElement} + + ); +} + +export default function App(): JSX.Element { return ( @@ -36,9 +46,7 @@ export default function App(): JSX.Element { - - {routeElement} - +