1.0.13 • Published 9 months ago

react-monaco-markdown v1.0.13

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

react-monaco-markdown

NPM version NPM downloads

安装

npm

npm i react-monaco-markdown

pnpm

pnpm i react-monaco-markdown

yarn

yarn add react-monaco-markdown

使用

import ReactMonacoMarkdown from 'react-monaco-markdown';

<ReactMonacoMarkdown
  value={'**Hello react-monaco-markdown!!!**'}
  onChange={(pre) => changeData(pre.text)}
/>;

Options

参数说明类型默认值是否必填版本
classNamestring-false>= 1.0.6
stylestyle 样式React.CSSProperties-false>= 1.0.6
value属性值string-false
onChange修改数据方法(pre: ReturnValue) => void-false
renderHtml渲染 html 方法(pre: ReturnValue) => React.ReactNode-false
config额外配置EditorConfig-false>= 1.0.6
width宽度number/string100%false>= 1.0.7
height高度number/string100%false>= 1.0.7
optionsmonaco-editor 的 options 配置editor.IStandaloneEditorConstructionOptions-false>= 1.0.7

EditorConfig

参数说明类型默认值是否必填版本
theme主题'light' / 'dark''light'false>= 1.0.7
isReadOnly是否只读Booleanfalsefalse>= 1.0.7
view切换展示视图View-false>= 1.0.7
htmlClass展示区域 classstring-false>= 1.0.7
markdownClass编写区域 classstring-false>= 1.0.7
table表格配置Table-false>= 1.0.7
imageUrl预设 图片 URLstring-false>= 1.0.7
imageAccept图片 acceptstring-false>= 1.0.7
linkUrl预设 link Urlstring-false>= 1.0.7
onCustomImageUpload自定义图片上传(event: any) => Promise<{ url: string; text?: string }>-false>= 1.0.7
onImageUpload本地图片上传UploadFunc-false>= 1.0.7

Table

export interface Table {
  maxRow: number;
  maxCol: number;
}

View

export interface View {
  menu?: boolean;
  both?: boolean;
  md?: boolean;
  html?: boolean;
}

UploadFunc

export type UploadFunc =
  | ((file: File) => Promise<string>)
  | ((file: File, callback: (url: string) => void) => void);

在 Next.js 中使用

import dynamic from 'next/dynamic'
const ReactMonacoMarkdown = dynamic(() => import('react-monaco-markdown'), {ssr: false})

const NextMarkdownPreview = dynamic(() => import('react-monaco-markdown').then(res => res.NextMarkdownPreview), {ssr: false})

<ReactMonacoMarkdown
  value={'**Hello react-monaco-markdown!!!**'} />
  onChange={pre => changeData(pre.text)}
  renderHtml={pre => <NextMarkdownPreview code={pre.text} />}
/>

LICENSE

MIT