mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-07-16 17:46:18 +08:00
fix: initial editor error
This commit is contained in:
@@ -46,7 +46,9 @@ const EditorReactor = ({
|
||||
setWorkspace: (workspace: Workspace) => void;
|
||||
setCurrentPage: (Page: Page) => void;
|
||||
}) => {
|
||||
const router = useRouter();
|
||||
const {
|
||||
query: { pageId: routerPageId },
|
||||
} = useRouter();
|
||||
|
||||
useEffect(() => {
|
||||
const workspace = new Workspace({
|
||||
@@ -71,21 +73,31 @@ const EditorReactor = ({
|
||||
return;
|
||||
}
|
||||
|
||||
const initialPageId =
|
||||
workspace.meta.pageMetas.find(
|
||||
p => p.id === (router.query.pageId as string)
|
||||
)?.id ?? workspace.meta.pageMetas[0]?.id;
|
||||
|
||||
if (!initialPageId) {
|
||||
createPage(workspace!, generateDefaultPageId()).then(page => {
|
||||
initialPage(page);
|
||||
if (routerPageId) {
|
||||
const pageId = routerPageId.toString();
|
||||
const page = workspace.getPage(pageId);
|
||||
if (page) {
|
||||
setCurrentPage(page);
|
||||
});
|
||||
} else {
|
||||
const page = workspace.getPage(initialPageId);
|
||||
setCurrentPage(page);
|
||||
} else {
|
||||
createPage(workspace!, pageId).then(page => {
|
||||
initialPage(page);
|
||||
setCurrentPage(page);
|
||||
});
|
||||
}
|
||||
return;
|
||||
}
|
||||
}, [workspace, router.query.pageId, setCurrentPage]);
|
||||
|
||||
const savedPageId = workspace.meta.pageMetas[0]?.id;
|
||||
if (savedPageId) {
|
||||
setCurrentPage(workspace.getPage(savedPageId));
|
||||
return;
|
||||
}
|
||||
|
||||
createPage(workspace!, generateDefaultPageId()).then(page => {
|
||||
initialPage(page);
|
||||
setCurrentPage(page);
|
||||
});
|
||||
}, [workspace, routerPageId, setCurrentPage]);
|
||||
|
||||
useEffect(() => {
|
||||
if (!currentPage) {
|
||||
|
||||
Reference in New Issue
Block a user