事件列表

本节将介绍 Easy Editor 的事件,通过事件可以监听 Easy Editor 的完整生命周期以及状态的变化,进行更多操作。2025-10-13 11:42:27 星期一

示例

  1. <template>
  2. <easy-editor
  3. v-bind="options"
  4. @before-create="onBeforeCreate"
  5. @created="onCreated"
  6. @changed="onChanged"
  7. @changed:selection="onChangedSelection"
  8. @changed:transaction="onChangedTransaction"
  9. @changed:menu="onChangedMenu"
  10. @changed:toolbar="onChangedToolbar"
  11. @changed:page-size="onChangedPageLayout"
  12. @changed:page-size="onChangedPageSize"
  13. @changed:page-orientation="onChangedPageOrientation"
  14. @changed:page-margin="onChangedPageMargin"
  15. @changed:page-background="onChangedPageBackground"
  16. @changed:page-zoom="onChangedZoom"
  17. @changed:page-show-toc="onChangedPageShowToc"
  18. @changed:page-preview="onChangedpreview"
  19. @changed:page-watermark="onChangedPageWatermark"
  20. @changed:locale="onChangedLocale"
  21. @changed:theme="onChangedTheme"
  22. @content-error="onContentError"
  23. @print="onPrint"
  24. @focus="onFocus"
  25. @blur="onBlur"
  26. @saved="onSaved"
  27. @destroy="onDestroy"
  28. />
  29. </template>
  30. <script setup>
  31. import { ref } from 'vue';
  32. import { UmoEditor } from '@umoteam/editor';
  33. const options = ref({
  34. // 配置项
  35. // ...
  36. });
  37. const onBeforeCreate = () => {
  38. console.log('onBeforeCreate', '编辑器即将创建,无可用参数')
  39. }
  40. const onCreated = () => {
  41. console.log('onCreated', '编辑器已创建,可用参数:', { editor })
  42. }
  43. const onChanged = () => {
  44. console.log('onChanged', '编辑器内容已更新,可用参数:', { editor })
  45. }
  46. const onChangedSelection = () => {
  47. console.log('onChanged:selection', '所选内容已发生变化,可用参数:', { editor })
  48. }
  49. const onChangedTransaction = () => {
  50. console.log(
  51. 'onChanged:transaction',
  52. '编辑器状态已发生变化,可用参数:', { editor, transaction },
  53. )
  54. }
  55. const onChangedMenu = (currentMenu) => {
  56. console.log(
  57. 'onChanged:menu',
  58. '菜单栏状态发生变化,可用参数: currentMenu,当前菜单为', currentMenu,
  59. )
  60. }
  61. const onChangedToolbar = ({ toolbar, oldToolbar }) => {
  62. console.log(
  63. 'onChanged:toolbar',
  64. '工具栏信息发生变化,可用参数:', { toolbar, oldToolbar }
  65. )
  66. }
  67. const onChangedPageLayout = ({ pageLayout, oldPageLayout }) => {
  68. console.log(
  69. 'onChanged:pageLayout',
  70. '页面布局发生变化,可用参数:', { pageLayout, oldPageLayout }
  71. )
  72. }
  73. const onChangedPageSize = ({ pageSize, oldPageSize }) => {
  74. console.log(
  75. 'onChanged:pageSize',
  76. '页面大小信息发生变化,可用参数:', { pageSize, oldPageSize }
  77. )
  78. }
  79. const onChangedPageOrientation = ({ pageOrientation, oldPageOrientation }) => {
  80. console.log(
  81. 'onChanged:pageOrientation',
  82. '页面方向发生变化,可用参数:', { pageOrientation, oldPageOrientation }
  83. )
  84. }
  85. const onChangedPageMargin = ({ pageMargin, oldPageMargin }) => {
  86. console.log(
  87. 'onChanged:pageMargin',
  88. '页面边距信息发生变化,可用参数:', { pageMargin, oldPageMargin },
  89. )
  90. }
  91. const onChangedPageBackground = ({ pageBackground, oldPageBackground }) => {
  92. console.log(
  93. 'onChanged:pageBackground',
  94. '页面背景发生变化,可用参数:', { pageBackground, oldPageBackground },
  95. )
  96. }
  97. const onChangedZoom = ({ zoomLevel, oldZoomLevel }) => {
  98. console.log(
  99. 'onChanged:pageZoom',
  100. '页面缩放比例发生变化,可用参数:', { zoomLevel, oldZoomLevel }
  101. )
  102. }
  103. const onChangedPageShowToc = (showToc) => {
  104. console.log(
  105. 'onChanged:pageShowToc',
  106. '页面大纲面板显示状态发生变化,可用参数:', showToc
  107. )
  108. }
  109. const onChangedpreview = (enabled) => {
  110. console.log(
  111. 'onChanged:pagePreview',
  112. '页面预览模式发生变化,可用参数:', enabled,
  113. )
  114. }
  115. const onChangedPageWatermark = ({ pageWatermark, oldPageWatermark }) => {
  116. console.log(
  117. 'onChanged:pageWatermark',
  118. '页面水印信息发生变化,可用参数:', { pageWatermark, oldPageWatermark }
  119. )
  120. }
  121. const onChangedLocale = ({ locale, oldLocale }) => {
  122. console.log(
  123. 'onChanged:locale',
  124. '语言设置发生变化,可用参数:', { locale, oldLocale }
  125. )
  126. }
  127. const onChangedTheme = (theme) => {
  128. console.log(
  129. 'onChanged:theme',
  130. '主题设置发生变化,可用参数:', theme
  131. )
  132. }
  133. const onContentError = ({ editor, error, disableCollaboration }) => {
  134. console.log(
  135. 'onContentError',
  136. '文档内容解析错误:', { editor, error, disableCollaboration }
  137. )
  138. }
  139. const onPrint = () => {
  140. console.log('onPrint', '编辑器获得焦点,无可用参数')
  141. }
  142. const onFocus = () => {
  143. console.log('onFocus', '编辑器获得焦点,可用参数:', { editor, event })
  144. }
  145. const onBlur = () => {
  146. console.log('onBlur', '编辑器失去焦点,可用参数:', { editor, event })
  147. }
  148. const onSaved = () => {
  149. console.log('onSaved', '文档已保存,无可用参数')
  150. }
  151. const onDestroy = () => {
  152. console.log('onDestroy', '编辑器组件已销毁,无可用参数')
  153. }
  154. </script>

事件说明

事件名称触发时机 / 说明可用参数
beforeCreate编辑器即将创建-
created编辑器已创建{ editor }
changed编辑器内容已更新{ editor }
changed:selection所选内容已发生变化{ editor }
changed:transaction编辑器状态已发生变化{ editor, transaction }
changed:menu菜单状态发生变化currentMenu
changed:toolbar工具栏信息发生变化{ toolbar, oldToolbar }
changed:pageLayout页面布局发生变化 v8.0.0 新增{ pageLayout, oldPageLayout }
changed:pageSize页面大小信息发生变化{ pageSize, oldPageSize }
changed:pageOrientation页面方向发生变化{ pageOrientation, oldPageOrientation }
changed:pageMargin页面边距信息发生变化{ pageMargin, oldPageMargin }
changed:pageBackground页面背景发生变化{ pageBackground, oldPageBackground }
changed:pageZoom页面缩放比例发生变化{ zoomLevel, oldZoomLevel }
changed:pageShowToc页面大纲面板显示状态发生变化showToc
changed:pagePreview页面预览模式发生变化enabled
changed:pageWatermark页面水印信息发生变化{ pageWatermark, oldPageWatermark }
changed:locale语言设置发生变化 v2.0.0 新增{ locale, oldLocale }
changed:theme主题设置发生变化 v2.1.0 新增theme
content-error文档内容解析错误 v2.3.0 新增{ editor, error, disableCollaboration }
print页面打印 v1.1.0 新增-
focus编辑器获得焦点{ editor, event }
blur编辑器失去焦点{ editor, event }
saved文档已保存-
destroy编辑器组件已销毁-