添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
原创首发

this.quill.getSelection()为空!

拉大锯 发表于 2020-08-06 04:01:15 4167

this.quill.getSelection()为空!

我要把我们的问答模块改成同学们向编辑器里粘贴图片,自动上传的功能。

拦截到粘贴以后,需要调用上传!

调用完上传以后,再向某个地方插入,这个时候需要拿到selection的index

可是selection为空!

 let cursorLocation = this.quill.selection.savedRange.index;

添加粘贴监听

   this.quill.root.addEventListener('paste', this.handleContentPaste, false);

处理监听内容,如查是file,并且是图片的话,那么

handleContentPaste(evt) {
        if (evt.clipboardData && evt.clipboardData.files && evt.clipboardData.files.length) {
          evt.preventDefault();
          [].forEach.call(evt.clipboardData.files, file => {
            if (!file.type.match(/^image\/(gif|jpe?g|a?png|bmp)/i)) {
              return;
            //调用上传方法
            const resetUploader = function () {
              var uploader = document.getElementById("file-upload");
              uploader.value = "";
            let cursorLocation = this.quill.selection.savedRange.index;
            //console.log(cursorLocation);
            this.$emit("image-added", file, this.quill, cursorLocation, resetUploader);
        console.log('handleContentPaste...');

然后就由外部去处理图片的上传了。

原创发布于 ,未经作者授权,禁止转载
评论