开发文档
方法列表

方法列表

本节介绍 Umo Editor 的方法,通过 Umo Editor 提供的方法,可以对 Umo Editor 进行一些常规操作。您可以访问https://demo.umodoc.com/editor?pane=events&lang=zh-CN,点击对应的方法按钮,查看方法的使用。

示例

<template>
  <umo-editor
    ref="editorRef"
    v-bind="options"
  />
  <button @click="getOptions">获取配置</button>
</template>
 
<script setup>
  import { ref } from 'vue';
  import { UmoEditor } from '@umoteam/editor';
 
  const editorRef = ref(null);
  const options = ref({
    // 配置项
    // ...
  })
 
  const getOptions = () => {
    const options = editorRef.value.getOptions();
    console.log(options);
  }
</script>

方法说明

getOptions

说明:获取 Umo Editor 的配置。

参数:无

返回值:Object,包含,包含 Umo Editor 的配置。

setOptions

说明:设置 Umo Editor 的配置。

参数:Object,包含 Umo Editor 的配置。

返回值:Object,包含,包含 Umo Editor 的配置。

setToolbar

说明:设置 Umo Editor 的工具栏类型。

参数:{ mode, show }

  • mode:String,工具栏类型,可选值为 robbinclassic
  • show:Boolean,是否显示工具栏。

返回值:无。

setPage

说明:设置 Umo Editor 的页面信息。

参数:Object,包含要设置的页面信息。

  • size:String,页面大小,应为 dicts.pageSizes 中提供的 label 值,如 A4。
  • orientation:String,页面方向,可选值为 portraitlandscape
  • background:String,页面背景,合法的CSS 颜色值。

返回值:无。

setWatermark

说明:设置 Umo Editor 的水印信息。

参数:Object,包含要设置的水印信息。

  • type: String,水印类型,可选值为:compactspacious
  • alpha: Number,水印透明度,可选值为:0-1。
  • fontColor: String,字体颜色,可选值为:合法的CSS 颜色值。
  • fontSize: Number,字体大小,单位为 px。
  • fontFamily: Number,字体,合法的CSS font-family值。
  • fontWeight: Sring,字体粗细,可选值为:normalboldbolder
  • text: String,水印内容,建议不超过 30 个字符。

返回值:无。

setDocument

说明:设置 Umo Editor 的文档信息。

参数:Object,包含要设置的文档信息。

  • title: String,文档标题。
  • bubbleMenu: Boolean,是否启用气泡菜单。
  • blockMenu: Boolean,是否启用块级菜单。
  • markdown: Boolean,是否启用 Markdown 语法。
  • spellcheck: Boolean,是否启用浏览器拼写检查。

返回值:无。

setContent

说明:设置 Umo Editor 的内容。

参数

  • content : 合法的 HTML 格式或其他合法的Tiptap 文档格式
  • options : // v2.2.0 新增
    • emitUpdate: true,是否触发更新事件。
    • focusPosition: focus 位置,可选值为:‘start’ | ‘end’ | ‘all’ | number | boolean | null (false)。
    • focusOptions: { scrollIntoView: true }

返回值:无。

autoPagination v5.0.0 新增

说明:主动对文档内容进行分页,或取消主动分页,取消主动分页主要是为了减少短时间内频繁分页带来的性能开销(如拖动改变节点高度时,会频繁触发分页),往往须在合适的时机后(如 DOM 高度变化以后),再次调用主动分页,以便于正确分页。

参数Boolean

返回值:无。

setLocale

说明:设置 Umo Editor 的显示语言。 v2.0.0 新增

参数zh-CNen-US

返回值:无。

setTheme

说明:设置 Umo Editor 的主题。 v2.1.0 新增

参数lightdarkauto

返回值:无。

setPagination

说明:设置是否开启分页。 v4.0.0 新增

参数Boolean

返回值:无。

getContent

说明:获取 Umo Editor 的内容。

参数:String,可选值为 htmljsontext

返回值htmljsontext

getContentExcerpt

说明:获取 Umo Editor 的内容摘要。

参数

  • charLimit:Number,摘要长度,默认为 100 个字符。
  • more:String,摘要结尾,默认为 ...

返回值:文档摘要。

getHTML

说明:获取 Umo Editor 的 HTML 内容。

参数:无。

返回值html

getJSON

说明:获取 Umo Editor 的 JSON 内容。

参数:无。

返回值JSON

getText

说明:获取 Umo Editor 的文本内容。

参数:无。

返回值:文本。

getImage

说明:获取 Umo Editor 的页面截图。

参数:String,可选值为 blobjpegpng

返回值:图片信息。

saveContent

说明:保存 Umo Editor 的内容。

参数:无。

返回值:无。

getEditor

说明:获取 Editor 的实例。

参数:无。

返回值:Tiptap Editor 实例。

getTableOfContents

说明:获取页面大纲,更多页面大纲信息可以通过 getEditor() 获取编辑器实例后,editor.storage.tableOfContents 获取。 v3.0.0 新增

参数:无。

返回值

[
  {
    dom: HTMLElement, // 当前锚点对应的HTML元素
    editor: Editor, // 编辑器实例
    id: String, // 节点 ID
    isActive: Boolean, // 当前锚点是否处于激活状态
    isScrolledOver: Boolean, // 这个锚点是否已经被滚动经过
    itemIndex: Number, // 在当前层级上的项目索引
    level: Number, // 项目的当前层级 - 这可能与实际的锚点层级不同,用于从高级到低级渲染层次结构
    node: Node, // 当前锚点对应的 ProseMirror 节点
    originalLevel: Number, // 实际层级
    pos: Number, // 锚点节点的位置
    textContent: String // 锚点的文本内容
  }
]

getSelectionText

说明:获取当前选中文字文字内容。 v3.0.0 新增

参数:无。

返回值:无

getSelectionNode

说明:获取当前选中节点信息。 v3.0.0 新增

参数:无。

返回值:Tiptap Node。

setCurrentNodeSelection

说明:用于选中当前焦点所在位置的整个节点,例如光标在 table 中的单元格时,调用该方法会选中整个表格。 v3.1.0 新增

参数:无。

返回值:无。

deleteSelectionNode

说明:删除当前选中的节点。 v3.0.0 新增

参数:无。

返回值:无

getLocale

说明:返回 Umo Editor 的显示语言。 v2.0.0 新增

参数:无。

返回值zh-CNen-US

getI18n

说明:返回vue-i18n实例。 v2.0.0 新增

参数:无。

返回值vue-i18n

setReadOnly

说明:设置 Umo Editor 的只读状态。

参数:Boolean,是否只读。

返回值:无。

print

说明:打印页面。 v1.1.0 新增

参数:无。

返回值:无。

focus

说明:使 Umo Editor 获取焦点。

参数

  • position : ‘start’ | ‘end’ | ‘all’ | number | boolean | null (false)
  • options : { scrollIntoView: boolean } // v2.2.0 新增

返回值:无。

blur

说明:使 Umo Editor 失去焦点。

参数:无。

返回值:无。

更多方法

Umo Editor 基于Tiptap实现,更多 Tiptap 内部方法请查看Tiptap 编辑器