From add116cffc6e7b86da9b3ed1b1f77f381e394f38 Mon Sep 17 00:00:00 2001 From: moonrailgun Date: Thu, 6 Apr 2023 10:48:54 +0800 Subject: [PATCH] perf: perf mobile view display in pagecontent --- .../src/routes/Main/Content/PageContent.tsx | 25 +++++++++++-------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/client/web/src/routes/Main/Content/PageContent.tsx b/client/web/src/routes/Main/Content/PageContent.tsx index a4cc20d9..4d28ac82 100644 --- a/client/web/src/routes/Main/Content/PageContent.tsx +++ b/client/web/src/routes/Main/Content/PageContent.tsx @@ -1,4 +1,4 @@ -import React, { PropsWithChildren, useCallback, useEffect } from 'react'; +import React, { PropsWithChildren, useCallback } from 'react'; import { useSidebarContext } from '../SidebarContext'; import _isNil from 'lodash/isNil'; import { EventTypes, useDrag, UserDragConfig } from '@use-gesture/react'; @@ -6,6 +6,7 @@ import { useIsMobile } from '@/hooks/useIsMobile'; import clsx from 'clsx'; import { ErrorBoundary } from '@/components/ErrorBoundary'; import type { ReactDOMAttributes } from '@use-gesture/react/dist/declarations/src/types'; +import { useWatch } from 'tailchat-shared'; interface PageContentRootProps extends PropsWithChildren { className?: string; @@ -20,7 +21,7 @@ const PageContentRoot: React.FC = ({
{children}
@@ -81,21 +82,17 @@ export const PageContent: React.FC> = [] ); - useEffect(() => { + useWatch([isMobile], () => { if (isMobile === false) { // 如果不为移动端, 则一定显示侧边栏 setShowSidebar(true); } - }, [isMobile]); + }); const sidebarEl = _isNil(sidebar) ? null : (
{props.sidebar} @@ -121,14 +118,20 @@ export const PageContent: React.FC> =