mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-08-24 05:07:06 +08:00
fix(core): page update date (#4502)
This commit is contained in:
@@ -4,7 +4,7 @@ import { PageNotFoundError } from '@affine/env/constant';
|
|||||||
import type { LayoutNode } from '@affine/sdk//entry';
|
import type { LayoutNode } from '@affine/sdk//entry';
|
||||||
import { rootBlockHubAtom } from '@affine/workspace/atom';
|
import { rootBlockHubAtom } from '@affine/workspace/atom';
|
||||||
import type { EditorContainer } from '@blocksuite/editor';
|
import type { EditorContainer } from '@blocksuite/editor';
|
||||||
import { assertExists } from '@blocksuite/global/utils';
|
import { assertExists, DisposableGroup } from '@blocksuite/global/utils';
|
||||||
import type { Page, Workspace } from '@blocksuite/store';
|
import type { Page, Workspace } from '@blocksuite/store';
|
||||||
import { useBlockSuitePageMeta } from '@toeverything/hooks/use-block-suite-page-meta';
|
import { useBlockSuitePageMeta } from '@toeverything/hooks/use-block-suite-page-meta';
|
||||||
import { useBlockSuiteWorkspacePage } from '@toeverything/hooks/use-block-suite-workspace-page';
|
import { useBlockSuiteWorkspacePage } from '@toeverything/hooks/use-block-suite-workspace-page';
|
||||||
@@ -98,13 +98,17 @@ const EditorWrapper = memo(function EditorWrapper({
|
|||||||
setBlockHub={setBlockHub}
|
setBlockHub={setBlockHub}
|
||||||
onLoad={useCallback(
|
onLoad={useCallback(
|
||||||
(page: Page, editor: EditorContainer) => {
|
(page: Page, editor: EditorContainer) => {
|
||||||
page.workspace.setPageMeta(page.id, {
|
const disposableGroup = new DisposableGroup();
|
||||||
updatedDate: Date.now(),
|
disposableGroup.add(
|
||||||
});
|
page.slots.blockUpdated.once(() => {
|
||||||
|
page.workspace.setPageMeta(page.id, {
|
||||||
|
updatedDate: Date.now(),
|
||||||
|
});
|
||||||
|
})
|
||||||
|
);
|
||||||
localStorage.setItem('last_page_id', page.id);
|
localStorage.setItem('last_page_id', page.id);
|
||||||
let dispose = () => {};
|
|
||||||
if (onLoad) {
|
if (onLoad) {
|
||||||
dispose = onLoad(page, editor);
|
disposableGroup.add(onLoad(page, editor));
|
||||||
}
|
}
|
||||||
const rootStore = getCurrentStore();
|
const rootStore = getCurrentStore();
|
||||||
const editorItems = rootStore.get(pluginEditorAtom);
|
const editorItems = rootStore.get(pluginEditorAtom);
|
||||||
@@ -124,7 +128,7 @@ const EditorWrapper = memo(function EditorWrapper({
|
|||||||
});
|
});
|
||||||
|
|
||||||
return () => {
|
return () => {
|
||||||
dispose();
|
disposableGroup.dispose();
|
||||||
clearTimeout(renderTimeout);
|
clearTimeout(renderTimeout);
|
||||||
window.setTimeout(() => {
|
window.setTimeout(() => {
|
||||||
disposes.forEach(dispose => dispose());
|
disposes.forEach(dispose => dispose());
|
||||||
|
|||||||
Reference in New Issue
Block a user