react
版本的 Markdown 编辑器,使用jsx
和typescript
开发。
文档与在线预览:传送门
md-editor-v3同系列项目。
default
、vuepress
、github
、cyanosis
、mk-cute
、smart-blue
6 种预览主题(不完全相同),支持自定义主题(参考文档 demo 页示例)。mermaid
绘图(>=1.3.0),katex
数学公式(>=1.4.0)。默认模式 | 暗黑模式 | 仅预览 |
---|---|---|
![]() |
![]() |
![]() |
输入提示和自定义简单的标记、表情扩展预览
yarn add md-editor-rt
使用已存在的语言、主题扩展,例如:日语
yarn add @vavt/cm-extension
使用更多的扩展工具栏组件,例如:导出内容为 PDF
yarn add @vavt/rt-extension
更多使用及贡献方式参考:md-editor-extension
从v4.0.0
开始,内部组件支持按需引用。
import React, { useState } from 'react';
import { MdEditor } from 'md-editor-rt';
import 'md-editor-rt/lib/style.css';
export default () => {
const [text, setText] = useState('# Hello Editor');
return <MdEditor modelValue={text} onChange={setText} />;
};
import React, { useState } from 'react';
import { MdEditor, MdCatalog } from 'md-editor-rt';
import 'md-editor-rt/lib/preview.css';
const scrollElement = document.documentElement;
export default () => {
const [text] = useState('# Hello Editor');
const [id] = useState('preview-only');
return (
<>
<MdEditor id={id} modelValue={text} />
<MdCatalog editorId={id} scrollElement={scrollElement} />
</>
);
};
当使用服务端渲染时,scrollElement
应该是字符类型,例:html
、body
、#id
、.class
。
更多用法请前往 文档。