From 920e079727285c5b7ce67641adcee1b2545b9ccc Mon Sep 17 00:00:00 2001
From: 疯狂的狮子Li <15040126243@163.com>
Date: 星期一, 09 十月 2023 12:00:15 +0800
Subject: [PATCH] update 优化 富文本Editor组件检验图片格式
---
src/components/Editor/index.vue | 40 ++++++++++++++++------------------------
1 files changed, 16 insertions(+), 24 deletions(-)
diff --git a/src/components/Editor/index.vue b/src/components/Editor/index.vue
index 6aef16b..b5299b4 100644
--- a/src/components/Editor/index.vue
+++ b/src/components/Editor/index.vue
@@ -9,13 +9,13 @@
name="file"
:show-file-list="false"
:headers="upload.headers"
- style="display: none"
+ ref="uploadRef"
v-if="type === 'url'"
>
</el-upload>
<div class="editor">
<quill-editor
- ref="myQuillEditor"
+ ref="quillEditorRef"
v-model:content="content"
contentType="html"
@textChange="(e: any) => $emit('update:modelValue', content)"
@@ -53,7 +53,7 @@
headers: globalHeaders(),
url: import.meta.env.VITE_APP_BASE_API + '/resource/oss/upload'
})
-const myQuillEditor = ref();
+const quillEditorRef = ref();
const options = ref({
theme: "snow",
@@ -86,7 +86,7 @@
},
}
},
- placeholder: '璇疯緭鍏ュ唴瀹�',
+ placeholder: "璇疯緭鍏ュ唴瀹�",
readOnly: props.readOnly,
});
@@ -110,10 +110,10 @@
// 鍥剧墖涓婁紶鎴愬姛杩斿洖鍥剧墖鍦板潃
const handleUploadSuccess = (res: any) => {
- // 鑾峰彇瀵屾枃鏈疄渚�
- let quill = toRaw(myQuillEditor.value).getQuill();
// 濡傛灉涓婁紶鎴愬姛
if (res.code === 200) {
+ // 鑾峰彇瀵屾枃鏈疄渚�
+ let quill = toRaw(quillEditorRef.value).getQuill();
// 鑾峰彇鍏夋爣浣嶇疆
let length = quill.selection.savedRange.index;
// 鎻掑叆鍥剧墖锛宺es涓烘湇鍔″櫒杩斿洖鐨勫浘鐗囬摼鎺ュ湴鍧�
@@ -129,6 +129,13 @@
// 鍥剧墖涓婁紶鍓嶆嫤鎴�
const handleBeforeUpload = (file: any) => {
+ const type = ["image/jpeg", "image/jpg", "image/png", "image/svg"];
+ const isJPG = type.includes(file.type);
+ //妫�楠屾枃浠舵牸寮�
+ if (!isJPG) {
+ proxy?.$modal.msgError(`鍥剧墖鏍煎紡閿欒!`);
+ return false;
+ }
// 鏍℃鏂囦欢澶у皬
if (props.fileSize) {
const isLt = file.size / 1024 / 1024 < props.fileSize;
@@ -149,95 +156,80 @@
</script>
<style>
+.editor-img-uploader {
+ display: none;
+}
.editor,
.ql-toolbar {
white-space: pre-wrap !important;
line-height: normal !important;
}
-
.quill-img {
display: none;
}
-
.ql-snow .ql-tooltip[data-mode="link"]::before {
content: "璇疯緭鍏ラ摼鎺ュ湴鍧�:";
}
-
.ql-snow .ql-tooltip.ql-editing a.ql-action::after {
border-right: 0;
content: "淇濆瓨";
padding-right: 0;
}
-
.ql-snow .ql-tooltip[data-mode="video"]::before {
content: "璇疯緭鍏ヨ棰戝湴鍧�:";
}
-
.ql-snow .ql-picker.ql-size .ql-picker-label::before,
.ql-snow .ql-picker.ql-size .ql-picker-item::before {
content: "14px";
}
-
.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="small"]::before,
.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="small"]::before {
content: "10px";
}
-
.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="large"]::before,
.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="large"]::before {
content: "18px";
}
-
.ql-snow .ql-picker.ql-size .ql-picker-label[data-value="huge"]::before,
.ql-snow .ql-picker.ql-size .ql-picker-item[data-value="huge"]::before {
content: "32px";
}
-
.ql-snow .ql-picker.ql-header .ql-picker-label::before,
.ql-snow .ql-picker.ql-header .ql-picker-item::before {
content: "鏂囨湰";
}
-
.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]::before {
content: "鏍囬1";
}
-
.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]::before {
content: "鏍囬2";
}
-
.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]::before {
content: "鏍囬3";
}
-
.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]::before {
content: "鏍囬4";
}
-
.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]::before {
content: "鏍囬5";
}
-
.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]::before,
.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]::before {
content: "鏍囬6";
}
-
.ql-snow .ql-picker.ql-font .ql-picker-label::before,
.ql-snow .ql-picker.ql-font .ql-picker-item::before {
content: "鏍囧噯瀛椾綋";
}
-
.ql-snow .ql-picker.ql-font .ql-picker-label[data-value="serif"]::before,
.ql-snow .ql-picker.ql-font .ql-picker-item[data-value="serif"]::before {
content: "琛嚎瀛椾綋";
}
-
.ql-snow .ql-picker.ql-font .ql-picker-label[data-value="monospace"]::before,
.ql-snow .ql-picker.ql-font .ql-picker-item[data-value="monospace"]::before {
content: "绛夊瀛椾綋";
--
Gitblit v1.9.3