fix: add page titles (#883)

This commit is contained in:
Peng Xiao
2023-02-09 11:30:57 +08:00
committed by GitHub
parent 0ccaf2bc45
commit 0984c37cad
8 changed files with 33 additions and 2 deletions

View File

@@ -59,7 +59,6 @@ export const Editor = ({ page, workspace, setEditor }: Props) => {
} }
setEditor(editor); setEditor(editor);
document.title = page.meta.title || 'Untitled';
return ret; return ret;
}, [workspace, page, setEditor]); }, [workspace, page, setEditor]);

View File

@@ -1,5 +1,13 @@
import NotfoundPage from '@/components/404'; import NotfoundPage from '@/components/404';
import Head from 'next/head';
export default function Custom404() { export default function Custom404() {
return <NotfoundPage></NotfoundPage>; return (
<>
<Head>
<title>404 - AFFiNE</title>
</Head>
<NotfoundPage></NotfoundPage>
</>
);
} }

View File

@@ -50,6 +50,7 @@ const App = ({ Component, pageProps }: AppPropsWithLayout) => {
sizes="180x180" sizes="180x180"
href="/icons/apple-touch-icon.png" href="/icons/apple-touch-icon.png"
/> />
<title>AFFiNE</title>
</Head> </Head>
<Logger /> <Logger />
<ProviderComposer <ProviderComposer

View File

@@ -15,6 +15,8 @@ import { useRouter } from 'next/router';
import { usePageHelper } from '@/hooks/use-page-helper'; import { usePageHelper } from '@/hooks/use-page-helper';
import dynamic from 'next/dynamic'; import dynamic from 'next/dynamic';
import { EditorContainer } from '@blocksuite/editor'; import { EditorContainer } from '@blocksuite/editor';
import Head from 'next/head';
import { useTranslation } from '@affine/i18n';
const DynamicBlocksuite = dynamic(() => import('@/components/editor'), { const DynamicBlocksuite = dynamic(() => import('@/components/editor'), {
ssr: false, ssr: false,
}); });
@@ -25,8 +27,12 @@ const Page: NextPageWithLayout = () => {
(editor: EditorContainer) => setEditor.current(editor), (editor: EditorContainer) => setEditor.current(editor),
[setEditor] [setEditor]
); );
const { t } = useTranslation();
return ( return (
<> <>
<Head>
<title>{currentPage?.meta?.title || t('Untitled')} - AFFiNE</title>
</Head>
<EditorHeader /> <EditorHeader />
<MobileModal /> <MobileModal />

View File

@@ -5,6 +5,8 @@ import { ReactElement } from 'react';
import WorkspaceLayout from '@/components/workspace-layout'; import WorkspaceLayout from '@/components/workspace-layout';
import { useTranslation } from '@affine/i18n'; import { useTranslation } from '@affine/i18n';
import { PageMeta, useAppState } from '@/providers/app-state-provider'; import { PageMeta, useAppState } from '@/providers/app-state-provider';
import Head from 'next/head';
const All = () => { const All = () => {
const { currentWorkspace } = useAppState(); const { currentWorkspace } = useAppState();
const pageList = (currentWorkspace?.blocksuiteWorkspace?.meta.pageMetas || const pageList = (currentWorkspace?.blocksuiteWorkspace?.meta.pageMetas ||
@@ -12,6 +14,9 @@ const All = () => {
const { t } = useTranslation(); const { t } = useTranslation();
return ( return (
<> <>
<Head>
<title>{t('All pages')} - AFFiNE</title>
</Head>
<PageListHeader icon={<AllPagesIcon />}>{t('All pages')}</PageListHeader> <PageListHeader icon={<AllPagesIcon />}>{t('All pages')}</PageListHeader>
<PageList <PageList
pageList={pageList.filter(p => !p.trash)} pageList={pageList.filter(p => !p.trash)}

View File

@@ -5,11 +5,15 @@ import { ReactElement } from 'react';
import WorkspaceLayout from '@/components/workspace-layout'; import WorkspaceLayout from '@/components/workspace-layout';
import { useTranslation } from '@affine/i18n'; import { useTranslation } from '@affine/i18n';
import { useAppState } from '@/providers/app-state-provider'; import { useAppState } from '@/providers/app-state-provider';
import Head from 'next/head';
export const Favorite = () => { export const Favorite = () => {
const { pageList } = useAppState(); const { pageList } = useAppState();
const { t } = useTranslation(); const { t } = useTranslation();
return ( return (
<> <>
<Head>
<title>{t('Favourites')} - AFFiNE</title>
</Head>
<PageListHeader icon={<FavouritesIcon />}> <PageListHeader icon={<FavouritesIcon />}>
{t('Favourites')} {t('Favourites')}
</PageListHeader> </PageListHeader>

View File

@@ -19,6 +19,7 @@ import WorkspaceLayout from '@/components/workspace-layout';
import { WorkspaceUnit } from '@affine/datacenter'; import { WorkspaceUnit } from '@affine/datacenter';
import { useTranslation } from '@affine/i18n'; import { useTranslation } from '@affine/i18n';
import { PageListHeader } from '@/components/header'; import { PageListHeader } from '@/components/header';
import Head from 'next/head';
const useTabMap = () => { const useTabMap = () => {
const { t } = useTranslation(); const { t } = useTranslation();
@@ -79,6 +80,9 @@ const WorkspaceSetting = () => {
useTabMap(); useTabMap();
return ( return (
<> <>
<Head>
<title>{t('Settings')} - AFFiNE</title>
</Head>
<StyledSettingContainer> <StyledSettingContainer>
<PageListHeader icon={<SettingsIcon />}>{t('Settings')}</PageListHeader> <PageListHeader icon={<SettingsIcon />}>{t('Settings')}</PageListHeader>
<StyledSettingSidebar> <StyledSettingSidebar>

View File

@@ -5,11 +5,15 @@ import { ReactElement } from 'react';
import WorkspaceLayout from '@/components/workspace-layout'; import WorkspaceLayout from '@/components/workspace-layout';
import { useTranslation } from '@affine/i18n'; import { useTranslation } from '@affine/i18n';
import { useAppState } from '@/providers/app-state-provider'; import { useAppState } from '@/providers/app-state-provider';
import Head from 'next/head';
export const Trash = () => { export const Trash = () => {
const { pageList } = useAppState(); const { pageList } = useAppState();
const { t } = useTranslation(); const { t } = useTranslation();
return ( return (
<> <>
<Head>
<title>{t('Trash')} - AFFiNE</title>
</Head>
<PageListHeader icon={<TrashIcon />}>{t('Trash')}</PageListHeader> <PageListHeader icon={<TrashIcon />}>{t('Trash')}</PageListHeader>
<PageList <PageList
pageList={pageList.filter(p => p.trash)} pageList={pageList.filter(p => p.trash)}