diff --git a/packages/client/src/components/document/reader/index.tsx b/packages/client/src/components/document/reader/index.tsx index f97cddcc..797b40b4 100644 --- a/packages/client/src/components/document/reader/index.tsx +++ b/packages/client/src/components/document/reader/index.tsx @@ -154,6 +154,7 @@ export const DocumentReader: React.FC = ({ documentId }) => { user={user} id={documentId} type="document" + initialContent={document.content} renderInEditorPortal={renderAuthor} onAwarenessUpdate={triggerJoinUser} /> diff --git a/packages/client/src/tiptap/editor/collaboration/collaboration/index.tsx b/packages/client/src/tiptap/editor/collaboration/collaboration/index.tsx index 7499634a..7cfe0686 100644 --- a/packages/client/src/tiptap/editor/collaboration/collaboration/index.tsx +++ b/packages/client/src/tiptap/editor/collaboration/collaboration/index.tsx @@ -8,6 +8,7 @@ import React, { forwardRef, useEffect, useImperativeHandle, useMemo, useRef, use import { IndexeddbPersistence } from 'tiptap/core/y-indexeddb'; import { Editor } from '../../react'; +import { ReaderEditor } from '../reader'; import { EditorInstance } from './editor'; import styles from './index.module.scss'; import { ICollaborationEditorProps, ProviderStatus } from './type'; @@ -26,6 +27,7 @@ export const CollaborationEditor = forwardRef((props: ICollaborationEditorProps, onTitleUpdate, user, menubar, + initialContent, renderInEditorPortal, onAwarenessUpdate, } = props; @@ -98,12 +100,16 @@ export const CollaborationEditor = forwardRef((props: ICollaborationEditorProps, - - {/* FIXME: semi-design 的问题,不加 div,文字会换行! */} -
-
- + initialContent ? ( + + ) : ( +
+ + {/* FIXME: semi-design 的问题,不加 div,文字会换行! */} +
+
+
+ ) } error={error} errorContent={(error) => ( diff --git a/packages/client/src/tiptap/editor/collaboration/collaboration/type.ts b/packages/client/src/tiptap/editor/collaboration/collaboration/type.ts index 39a0e62e..06e68704 100644 --- a/packages/client/src/tiptap/editor/collaboration/collaboration/type.ts +++ b/packages/client/src/tiptap/editor/collaboration/collaboration/type.ts @@ -28,6 +28,12 @@ export interface ICollaborationEditorProps { */ user: ILoginUser | null; + /** + * 初始内容 + * websocket 连接比较耗时,可以先用初始内容展现 + */ + initialContent?: string; + /** * 文档标题变动 */