설정
MarkdownEditor 생성자는 컨테이너 요소나 선택자를 받은 다음 MarkdownEditorOptions 객체를 받습니다. 이 페이지는 각 필드의 타입, 기본값, 동작과 관련 옵션 타입을 설명합니다.
MarkdownEditorOptions
interface MarkdownEditorOptions {
value?: string;
mode?: EditorMode;
theme?: EditorTheme;
math?: boolean;
mindmap?: boolean;
codeHighlight?: boolean;
tips?: boolean;
preview?: boolean;
onChange?: (value: string) => void;
toolbar?: ToolbarConfig;
onImageUpload?: (file: File) => Promise<string>;
mention?: MentionOptions;
docLink?: DocLinkOptions;
renderDebounce?: number | false;
autoPreview?: boolean;
}
| 옵션 | 타입 | 기본값 | 설명 |
|---|---|---|---|
value | string | '' | 초기 Markdown 콘텐츠입니다. |
mode | EditorMode | 'simple' | 'simple'은 도구 모음과 상태 표시줄 없이 편집 영역과 미리보기를 표시합니다. 'complex'는 두 표시줄을 추가합니다. |
theme | EditorTheme | 'light' | data-theme 속성으로 적용하는 테마입니다. 'light' 또는 'dark'를 사용합니다. |
math | boolean | true | KaTeX 수식을 활성화합니다. 인라인은 $...$, 블록은 $$...$$입니다. |
mindmap | boolean | true | ```mindmap 코드 블록의 Markmap 마인드맵을 활성화합니다. |
codeHighlight | boolean | true | 세 가지 색 점 헤더와 복사 버튼이 있는 highlight.js 코드 블록을 활성화합니다. |
tips | boolean | true | :::notice, :::warning 등의 알림 블록을 활성화합니다. |
preview | boolean | true | 미리보기 패널을 표시합니다. false이면 편집기 패널만 만듭니다. |
onChange | (value: string) => void | — | 편집할 때마다 전체 문서 문자열을 인수로 호출합니다. |
toolbar | ToolbarConfig | 모든 작업 | 표시할 도구 모음 작업을 정하고 레이블이나 아이콘을 재정의합니다. |
onImageUpload | (file: File) => Promise<string> | — | 이미지 파일을 편집기에 붙여넣거나 드롭하면 호출하는 훅입니다. Promise는 이미지 URL을 반환해야 하며 로 삽입됩니다. 이미지 대화상자는 URL을 받으며 파일 선택기는 제공하지 않습니다. |
mention | MentionOptions | — | @멘션 드롭다운 설정입니다. 생략하면 @를 입력해도 드롭다운이 열리지 않습니다. |
docLink | DocLinkOptions | — | 문서 링크 삽입 설정입니다. 생략하면 트리거 문자를 입력해도 드롭다운이 열리지 않습니다. |
renderDebounce | number | false | 적응형 | 미리보기 디바운스 지연(밀리초)입니다. false이면 편집할 때마다 동기 렌더링하고, 숫자는 고정 지연을 지정합니다. 생략하면 adaptiveDebounceMs(value.length)를 사용하며 기본 120ms에서 최대 600ms까지 조정됩니다. |
autoPreview | boolean | true | true이면 편집 후 디바운스를 거쳐 미리보기를 다시 렌더링합니다. false이면 renderNow()를 호출하거나 상태 표시줄의 새로 고침 버튼을 사용합니다. |