fix(core): avoid flicking when click sidebar user avatar (#6482)

This commit is contained in:
CatsJuice
2024-04-09 02:52:51 +00:00
parent f590d84711
commit d9504e4eb7
@@ -5,6 +5,7 @@ import {
Menu, Menu,
MenuIcon, MenuIcon,
MenuItem, MenuItem,
Skeleton,
} from '@affine/component'; } from '@affine/component';
import { import {
authAtom, authAtom,
@@ -25,7 +26,7 @@ import {
} from '@blocksuite/icons'; } from '@blocksuite/icons';
import { assignInlineVars } from '@vanilla-extract/dynamic'; import { assignInlineVars } from '@vanilla-extract/dynamic';
import { useSetAtom } from 'jotai'; import { useSetAtom } from 'jotai';
import { useCallback } from 'react'; import { Suspense, useCallback } from 'react';
import * as styles from './index.css'; import * as styles from './index.css';
import { UnknownUserIcon } from './unknow-user'; import { UnknownUserIcon } from './unknow-user';
@@ -155,12 +156,27 @@ const CloudUsage = () => {
); );
}; };
const OperationMenu = () => { const MenuFallback = () => {
return ( return (
<> <>
<CloudUsage /> <div>
<Skeleton height={15} width={50} />
<Skeleton height={10} style={{ marginTop: 4 }} />
</div>
<Divider /> <Divider />
<AccountMenu /> <Skeleton height={30} />
<Divider />
<Skeleton height={30} />
</> </>
); );
}; };
const OperationMenu = () => {
return (
<Suspense fallback={<MenuFallback />}>
<CloudUsage />
<Divider />
<AccountMenu />
</Suspense>
);
};