Browse Source

fix(web): wangEditor v5 上传图片改用customInsert+限制5M+错误提示

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Xiaogang Liao 1 month ago
parent
commit
c697fb7b72

+ 7 - 2
cfc-web/src/views/admin/ActivityEdit.vue

@@ -255,13 +255,18 @@ export default {
             server: baseURL + '/api/admin/articles/upload/image',
             headers: token ? { Authorization: 'Bearer ' + token } : {},
             maxNumberOfFiles: 1,
+            maxFileSize: 5 * 1024 * 1024,
             fieldName: 'file',
             customAlert: (msg, type) => {
               this.$message && this.$message({ message: msg, type: type || 'error' })
             },
-            onSuccess(res, insertFn) {
+            onError: (file, err, res) => {
+              const msg = (file && file.name || '图片') + ' 上传失败,图片不能超过 5MB'
+              this.$message && this.$message({ message: msg, type: 'error' })
+            },
+            customInsert(res, insertFn) {
               if (res.code === 200) {
-                const url = res.data.url || res.data
+                const url = res.data && res.data.url ? res.data.url : res.data
                 insertFn(baseURL + url)
               }
             }

+ 6 - 2
cfc-web/src/views/admin/ArticleEdit.vue

@@ -260,9 +260,13 @@ export default {
               customAlert: (msg, type) => {
                 this.$message && this.$message({ message: msg, type: type || 'error' })
               },
-              onSuccess(res, insertFn) {
+onError: (file, err, res) => {
+              const msg = (file && file.name || '图片') + ' 上传失败,图片不能超过 5MB'
+              this.$message && this.$message({ message: msg, type: 'error' })
+            },
+              customInsert(res, insertFn) {
                 if (res.code === 200) {
-                  const url = res.data.url || res.data
+                  const url = res.data && res.data.url ? res.data.url : res.data
                   insertFn(baseURL + url)
                 }
               }

+ 7 - 2
cfc-web/src/views/admin/ProductEdit.vue

@@ -262,14 +262,19 @@ export default {
             server: '',
             headers: {},
             maxNumberOfFiles: 1,
+            maxFileSize: 5 * 1024 * 1024,
             fieldName: 'file',
             customAlert: (msg, type) => {
               this.$message && this.$message({ message: msg, type: type || 'error' })
             },
-            onSuccess(res, insertFn) {
+            onError: (file, err, res) => {
+              const msg = (file && file.name || '图片') + ' 上传失败,图片不能超过 5MB'
+              this.$message && this.$message({ message: msg, type: 'error' })
+            },
+            customInsert(res, insertFn) {
               if (res.code === 200) {
                 const baseURL = process.env.VUE_APP_BASE_API || ''
-                const url = res.data.url || res.data
+                const url = res.data && res.data.url ? res.data.url : res.data
                 insertFn(baseURL + url)
               }
             }