diff --git a/src/core/service/api/context/editor.js b/src/core/service/api/context/editor.js index 34e901abfea1db8b613a77a26ea93d313ead8f54..b0e8a51322cea643473bcda2f09612a5be19fcd9 100644 --- a/src/core/service/api/context/editor.js +++ b/src/core/service/api/context/editor.js @@ -17,7 +17,7 @@ UniServiceJSBridge.subscribe('onEditorMethodCallback', ({ callback.invoke(callbackId, data) }) -const methods = ['insertDivider', 'insertImage', 'insertText', 'setContents', 'getContents', 'clear', 'removeFormat', 'undo', 'redo'] +const methods = ['insertDivider', 'insertImage', 'insertText', 'setContents', 'getContents', 'clear', 'removeFormat', 'undo', 'redo', 'blur', 'getSelectionText', 'scrollIntoView'] export class EditorContext { constructor (id, pageId) { diff --git a/src/core/view/components/editor/index.vue b/src/core/view/components/editor/index.vue index 39b15c62f870d848eacefbefb590681d71a61fb0..44c568fd1ec46945b8647af20db17c3409198745 100644 --- a/src/core/view/components/editor/index.vue +++ b/src/core/view/components/editor/index.vue @@ -205,6 +205,19 @@ export default { case 'redo': quill.history.redo() break + case 'blur': + quill.blur() + break + case 'getSelectionText': + range = quill.selection.savedRange + res = { text: '' } + if (range && range.length !== 0) { + res.text = quill.getText(range.index, range.length) + } + break + case 'scrollIntoView': + quill.scrollIntoView() + break default: break }