瀏覽代碼

fix 修复 富文本编辑器 单页面多实例图片胡乱问题

疯狂的狮子Li 1 年之前
父節點
當前提交
173c723c7c
共有 1 個文件被更改,包括 23 次插入36 次删除
  1. 23 36
      src/components/Editor/index.vue

+ 23 - 36
src/components/Editor/index.vue

@@ -13,16 +13,16 @@
       :headers="upload.headers"
     >
     </el-upload>
-    <div class="editor">
-      <quill-editor
-        ref="quillEditorRef"
-        v-model:content="content"
-        content-type="html"
-        :options="options"
-        :style="styles"
-        @text-change="(e: any) => $emit('update:modelValue', content)"
-      />
-    </div>
+  </div>
+  <div class="editor">
+    <quill-editor
+      ref="quillEditorRef"
+      v-model:content="content"
+      content-type="html"
+      :options="options"
+      :style="styles"
+      @text-change="(e: any) => $emit('update:modelValue', content)"
+    />
   </div>
 </template>
 
@@ -64,30 +64,18 @@ const options = ref<any>({
   debug: 'warn',
   modules: {
     // 工具栏配置
-    toolbar: {
-      container: [
-        ['bold', 'italic', 'underline', 'strike'], // 加粗 斜体 下划线 删除线
-        ['blockquote', 'code-block'], // 引用  代码块
-        [{ list: 'ordered' }, { list: 'bullet' }], // 有序、无序列表
-        [{ indent: '-1' }, { indent: '+1' }], // 缩进
-        [{ size: ['small', false, 'large', 'huge'] }], // 字体大小
-        [{ header: [1, 2, 3, 4, 5, 6, false] }], // 标题
-        [{ color: [] }, { background: [] }], // 字体颜色、字体背景颜色
-        [{ align: [] }], // 对齐方式
-        ['clean'], // 清除文本格式
-        ['link', 'image', 'video'] // 链接、图片、视频
-      ],
-      handlers: {
-        image: function (value: any) {
-          if (value) {
-            // 调用element图片上传
-            (document.querySelector('.editor-img-uploader>.el-upload') as HTMLDivElement)?.click();
-          } else {
-            Quill.format('image', true);
-          }
-        }
-      }
-    }
+    toolbar: [
+      ['bold', 'italic', 'underline', 'strike'], // 加粗 斜体 下划线 删除线
+      ['blockquote', 'code-block'], // 引用  代码块
+      [{ list: 'ordered' }, { list: 'bullet' }], // 有序、无序列表
+      [{ indent: '-1' }, { indent: '+1' }], // 缩进
+      [{ size: ['small', false, 'large', 'huge'] }], // 字体大小
+      [{ header: [1, 2, 3, 4, 5, 6, false] }], // 标题
+      [{ color: [] }, { background: [] }], // 字体颜色、字体背景颜色
+      [{ align: [] }], // 对齐方式
+      ['clean'], // 清除文本格式
+      ['link', 'image', 'video'] // 链接、图片、视频
+    ]
   },
   placeholder: '请输入内容',
   readOnly: props.readOnly
@@ -129,7 +117,7 @@ const handleUploadSuccess = (res: any) => {
     quill.setSelection(length + 1);
     proxy?.$modal.closeLoading();
   } else {
-    proxy?.$modal.loading(res.msg);
+    proxy?.$modal.msgError("图片插入失败");
     proxy?.$modal.closeLoading();
   }
 };
@@ -157,7 +145,6 @@ const handleBeforeUpload = (file: any) => {
 
 // 图片失败拦截
 const handleUploadError = (err: any) => {
-  console.error(err);
   proxy?.$modal.msgError('上传文件失败');
 };
 </script>