mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-12 04:18:54 +00:00
feat(core): add document title for shared page (#5596)
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
import type { PageMeta } from '@blocksuite/store';
|
||||
import { noop } from 'lodash-es';
|
||||
import { useEffect } from 'react';
|
||||
|
||||
@@ -14,3 +15,7 @@ export function useDocumentTitle(newTitle?: string | null) {
|
||||
};
|
||||
}, [newTitle]);
|
||||
}
|
||||
|
||||
export function usePageDocumentTitle(pageMeta?: PageMeta) {
|
||||
useDocumentTitle(pageMeta?.title ? `${pageMeta.title} · AFFiNE` : null);
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { MainContainer } from '@affine/component/workspace';
|
||||
import { usePageDocumentTitle } from '@affine/core/hooks/use-global-state';
|
||||
import { DebugLogger } from '@affine/debug';
|
||||
import { fetchWithTraceReport } from '@affine/graphql';
|
||||
import { globalBlockSuiteSchema } from '@affine/workspace';
|
||||
@@ -119,6 +120,8 @@ export const loader: LoaderFunction = async ({ params }) => {
|
||||
|
||||
export const Component = (): ReactElement => {
|
||||
const { page, publishMode } = useLoaderData() as LoaderData;
|
||||
usePageDocumentTitle(page.meta);
|
||||
|
||||
return (
|
||||
<AppContainer>
|
||||
<MainContainer>
|
||||
|
||||
@@ -35,7 +35,7 @@ import {
|
||||
import { TrashPageFooter } from '../../../components/pure/trash-page-footer';
|
||||
import { TopTip } from '../../../components/top-tip';
|
||||
import { useRegisterBlocksuiteEditorCommands } from '../../../hooks/affine/use-register-blocksuite-editor-commands';
|
||||
import { useDocumentTitle } from '../../../hooks/use-global-state';
|
||||
import { usePageDocumentTitle } from '../../../hooks/use-global-state';
|
||||
import { useNavigateHelper } from '../../../hooks/use-navigate-helper';
|
||||
import { performanceRenderLogger } from '../../../shared';
|
||||
import { PageNotFound } from '../../404';
|
||||
@@ -115,7 +115,7 @@ const DetailPageImpl = memo(function DetailPageImpl({ page }: { page: Page }) {
|
||||
const mode = useAtomValue(currentModeAtom);
|
||||
const setPageMode = useSetAtom(setPageModeAtom);
|
||||
useRegisterBlocksuiteEditorCommands(currentPageId, mode);
|
||||
useDocumentTitle(pageMeta?.title ? `${pageMeta.title} · AFFiNE` : null);
|
||||
usePageDocumentTitle(pageMeta);
|
||||
|
||||
const onLoad = useCallback(
|
||||
(page: Page, editor: AffineEditorContainer) => {
|
||||
|
||||
Reference in New Issue
Block a user