Skip to content

快速开始

快速了解可查看视频教程。用于 Vue React 参考这里

创建空白编辑器

可直接参考 demo 示例的网页源码。

引入 CSS 定义样式

可自定义编辑器、工具栏的尺寸、边框、z-index 等样式。

html
<link href="https://unpkg.com/@wangeditor-next/editor@latest/dist/css/style.css" rel="stylesheet">
<style>
  #editor—wrapper {
    border: 1px solid #ccc;
    z-index: 100; /* 按需定义 */
  }
  #toolbar-container { border-bottom: 1px solid #ccc; }
  #editor-container { height: 500px; }
</style>

自定义元素样式

html
<style>
  /* 匹配所有 id 以 "w-e-element-paragraph-" 开头的元素 */
  [id^="w-e-element-paragraph-"] {
  /* 示例样式 */
  border:  solid #000;
  }
</style>

定义 HTML 结构

html
<div id="editor—wrapper">
    <div id="toolbar-container"><!-- 工具栏 --></div>
    <div id="editor-container"><!-- 编辑器 --></div>
</div>

TIP

  • 如果想要“全屏”功能,则要求工具栏、编辑器 DOM 节点必须是同一层级
  • 当然,工具栏、编辑器 DOM 节点也可自由组合,例如 仿腾讯文档 demo

引入 JS 创建编辑器

html
<script src="https://unpkg.com/@wangeditor-next/editor@latest/dist/index.js"></script>
<script>
const { createEditor, createToolbar } = window.wangEditor

const editorConfig = {
    placeholder: 'Type here...',
    onChange(editor) {
      const html = editor.getHtml()
      console.log('editor content', html)
      // 也可以同步到 <textarea>
    }
}

const editor = createEditor({
    selector: '#editor-container',
    html: '<p><br></p>',
    config: editorConfig,
    mode: 'default', // or 'simple'
})

const toolbarConfig = {}

const toolbar = createToolbar({
    editor,
    selector: '#toolbar-container',
    config: toolbarConfig,
    mode: 'default', // or 'simple'
})
</script>

TIP

不同 mode 可参考 demo

这样就创建出了一个最基本的编辑器。

接下来

要实现一个完整的富文本编辑器功能,你可能还需要以下功能:

基于 MIT 许可发布