From 50daa4bfe915694d74009ef6f3e1ab1b1bd06316 Mon Sep 17 00:00:00 2001 From: zoujiandong <10130823232@qq.com> Date: Mon, 18 Aug 2025 09:37:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=BC=96=E8=BE=91=E5=88=A4?= =?UTF-8?q?=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 261 +----------------- package.json | 5 +- src/components/framework/wangeditor/index.vue | 4 +- .../case-clinical-article-form.vue | 4 + 4 files changed, 21 insertions(+), 253 deletions(-) diff --git a/package-lock.json b/package-lock.json index 98189d2..c258bfa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,9 +10,8 @@ "license": "MIT", "dependencies": { "@ant-design/icons-vue": "^7.0.1", - "@wangeditor-next/editor": "5.6.34", - "@wangeditor-next/editor-for-vue": "5.1.14", - "@wangeditor/editor": "^5.1.23", + "@wangeditor/editor": "^5.0.1", + "@wangeditor/editor-for-vue": "^5.1.11", "ant-design-vue": "4.2.5", "axios": "1.6.8", "clipboard": "2.0.11", @@ -1357,157 +1356,6 @@ "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.27.tgz", "integrity": "sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA==" }, - "node_modules/@wangeditor-next/basic-modules": { - "version": "1.5.41", - "resolved": "https://registry.npmjs.org/@wangeditor-next/basic-modules/-/basic-modules-1.5.41.tgz", - "integrity": "sha512-xWJ/BUHKtDKJhbkf70k7tvfw2alYVeENpSLeTZ7IVHVcJ0vYNbZAjnM8GD2+00iHisuH13S01USzClkhAC7ang==", - "dependencies": { - "is-url": "^1.2.4" - }, - "peerDependencies": { - "@wangeditor-next/core": "1.7.41", - "dom7": "^3.0.0 || ^4.0.0", - "lodash.throttle": "^4.1.1", - "nanoid": "^5.0.0", - "slate": "^0.82.0", - "snabbdom": "^3.6.0" - } - }, - "node_modules/@wangeditor-next/code-highlight": { - "version": "1.3.38", - "resolved": "https://registry.npmjs.org/@wangeditor-next/code-highlight/-/code-highlight-1.3.38.tgz", - "integrity": "sha512-4VizgHokaBbf/q/sdRjL1SP5hDz8jFJAOcHzKYz1/+5hmzxGPD7rhDwwMCHRD1UxYF8XLCIqs07oicD/UCAj4g==", - "dependencies": { - "prismjs": "^1.23.0" - }, - "peerDependencies": { - "@wangeditor-next/core": "1.7.41", - "dom7": "^3.0.0 || ^4.0.0", - "slate": "^0.82.0", - "snabbdom": "^3.6.0" - } - }, - "node_modules/@wangeditor-next/core": { - "version": "1.7.41", - "resolved": "https://registry.npmjs.org/@wangeditor-next/core/-/core-1.7.41.tgz", - "integrity": "sha512-4ysUrl8unBOEnjw2vOd/tPV0TklYGOlJwiTeuqG3utSWoo5mLThe8ViNH6cr8rKE2mk+GmLcVbsLA/wrnLrvdg==", - "dependencies": { - "@types/event-emitter": "^0.3.3", - "event-emitter": "^0.3.5", - "html-void-elements": "^3.0.0", - "i18next": "^23.0.0", - "scroll-into-view-if-needed": "^3.0.0", - "slate-history": "^0.109.0" - }, - "peerDependencies": { - "@uppy/core": "^2.1.1", - "@uppy/xhr-upload": "^2.0.3", - "dom7": "^3.0.0 || ^4.0.0", - "is-hotkey": "^0.2.0", - "lodash.camelcase": "^4.3.0", - "lodash.clonedeep": "^4.5.0", - "lodash.debounce": "^4.0.8", - "lodash.foreach": "^4.5.0", - "lodash.isequal": "^4.5.0", - "lodash.throttle": "^4.1.1", - "lodash.toarray": "^4.4.0", - "nanoid": "^5.0.0", - "slate": "^0.82.0", - "snabbdom": "^3.6.0" - } - }, - "node_modules/@wangeditor-next/editor": { - "version": "5.6.34", - "resolved": "https://registry.npmjs.org/@wangeditor-next/editor/-/editor-5.6.34.tgz", - "integrity": "sha512-ZBRl9+Zzvt9DheIFjDfcwfGXVt7+5oP7ZZazyFh5Ta23RLBHQhwbWPkSbFYUzigPXwILofXPAxdwyyFVnHe5jw==", - "dependencies": { - "@uppy/core": "^2.1.1", - "@uppy/xhr-upload": "^2.0.3", - "@wangeditor-next/basic-modules": "~1.5.34", - "@wangeditor-next/code-highlight": "~1.3.31", - "@wangeditor-next/core": "~1.7.34", - "@wangeditor-next/list-module": "~1.1.40", - "@wangeditor-next/table-module": "~1.6.44", - "@wangeditor-next/upload-image-module": "~1.1.37", - "@wangeditor-next/video-module": "~1.3.40", - "dom7": "^4.0.0", - "is-hotkey": "^0.2.0", - "lodash.camelcase": "^4.3.0", - "lodash.clonedeep": "^4.5.0", - "lodash.debounce": "^4.0.8", - "lodash.foreach": "^4.5.0", - "lodash.isequal": "^4.5.0", - "lodash.throttle": "^4.1.1", - "lodash.toarray": "^4.4.0", - "nanoid": "^5.0.0", - "slate": "^0.82.0", - "snabbdom": "^3.6.0" - } - }, - "node_modules/@wangeditor-next/editor-for-vue": { - "version": "5.1.14", - "resolved": "https://registry.npmjs.org/@wangeditor-next/editor-for-vue/-/editor-for-vue-5.1.14.tgz", - "integrity": "sha512-Xkrdo590AhLHvzyR+U246t6T89nIWHz1weAgMuo8jEA2HS5RiUnsA4U6+iUGaQ2E5c8mYQaeNqzHQXUp9Okbiw==", - "peerDependencies": { - "@wangeditor-next/editor": ">=5.1.0", - "vue": "^3.0.5" - } - }, - "node_modules/@wangeditor-next/list-module": { - "version": "1.1.47", - "resolved": "https://registry.npmjs.org/@wangeditor-next/list-module/-/list-module-1.1.47.tgz", - "integrity": "sha512-afi5xUY7zb4fieuW9cgOW6z5ZPkLoWlk6SpmF8ZIaQ6gB4t1bk+ZWpmW0WcV+mbQc9ZVvcNTij94NLLn0cTWyg==", - "peerDependencies": { - "@wangeditor-next/core": "1.7.41", - "dom7": "^3.0.0 || ^4.0.0", - "slate": "^0.82.0", - "snabbdom": "^3.6.0" - } - }, - "node_modules/@wangeditor-next/table-module": { - "version": "1.6.54", - "resolved": "https://registry.npmjs.org/@wangeditor-next/table-module/-/table-module-1.6.54.tgz", - "integrity": "sha512-JXE+/JJMHhJc94e4L6ao0Orfydb9HbSSjeBrTNAQgsgzF4plto4bzJ2tALHF+Kx9m4LeAWgLyxY4HGWxtvEUlA==", - "peerDependencies": { - "@wangeditor-next/core": "1.7.41", - "dom7": "^3.0.0 || ^4.0.0", - "lodash.debounce": "^4.0.8", - "lodash.isequal": "^4.5.0", - "lodash.throttle": "^4.1.1", - "nanoid": "^5.0.0", - "slate": "^0.82.0", - "snabbdom": "^3.6.0" - } - }, - "node_modules/@wangeditor-next/upload-image-module": { - "version": "1.1.44", - "resolved": "https://registry.npmjs.org/@wangeditor-next/upload-image-module/-/upload-image-module-1.1.44.tgz", - "integrity": "sha512-AJjfAv9Sk2VaUxEHWYvcKTKi8caHnnwzquqjUN8wDd8QtEQdn1aMm4r96MWDn/f74u4vjN3UeyAvWx7Yuv/XRw==", - "peerDependencies": { - "@uppy/core": "^2.0.3", - "@uppy/xhr-upload": "^2.0.3", - "@wangeditor-next/basic-modules": "1.5.41", - "@wangeditor-next/core": "1.7.41", - "dom7": "^3.0.0 || ^4.0.0", - "lodash.foreach": "^4.5.0", - "slate": "^0.82.0", - "snabbdom": "^3.6.0" - } - }, - "node_modules/@wangeditor-next/video-module": { - "version": "1.3.47", - "resolved": "https://registry.npmjs.org/@wangeditor-next/video-module/-/video-module-1.3.47.tgz", - "integrity": "sha512-fXUM3tIx2fAqqUeHLIyok6+lizUdxp1Y8P4+SpFs9ODiKryauBASYcR+4v+UnhyvDe4KE2xRaWq9beiXYnT6lQ==", - "peerDependencies": { - "@uppy/core": "^2.1.4", - "@uppy/xhr-upload": "^2.0.7", - "@wangeditor-next/core": "1.7.41", - "dom7": "^3.0.0 || ^4.0.0", - "nanoid": "^5.0.0", - "slate": "^0.82.0", - "snabbdom": "^3.6.0" - } - }, "node_modules/@wangeditor/editor": { "version": "5.1.23", "resolved": "https://registry.npmjs.org/@wangeditor/editor/-/editor-5.1.23.tgz", @@ -1536,6 +1384,16 @@ "snabbdom": "^3.1.0" } }, + "node_modules/@wangeditor/editor-for-vue": { + "version": "5.1.12", + "resolved": "https://registry.npmjs.org/@wangeditor/editor-for-vue/-/editor-for-vue-5.1.12.tgz", + "integrity": "sha512-0Ds3D8I+xnpNWezAeO7HmPRgTfUxHLMd9JKcIw+QzvSmhC5xUHbpCcLU+KLmeBKTR/zffnS5GQo6qi3GhTMJWQ==", + "license": "MIT", + "peerDependencies": { + "@wangeditor/editor": ">=5.1.0", + "vue": "^3.0.5" + } + }, "node_modules/@wangeditor/editor/node_modules/@wangeditor/basic-modules": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/@wangeditor/basic-modules/-/basic-modules-1.1.7.tgz", @@ -2366,11 +2224,6 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true }, - "node_modules/compute-scroll-into-view": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-3.1.1.tgz", - "integrity": "sha512-VRhuHOLoKYOy4UbilLbUzbYg93XLjv2PncJC50EuTWPA3gaja1UjBsUP/D/9/juV3vQFr6XBEzn9KCAHdUvOHw==" - }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -2626,14 +2479,6 @@ "resolved": "https://registry.npmjs.org/dom-scroll-into-view/-/dom-scroll-into-view-2.0.1.tgz", "integrity": "sha512-bvVTQe1lfaUr1oFzZX80ce9KLDlZ3iU+XGNE/bz9HnGdklTieqsbmsLHe+rT2XWqopvL0PckkYqN7ksmm5pe3w==" }, - "node_modules/dom7": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/dom7/-/dom7-4.0.6.tgz", - "integrity": "sha512-emjdpPLhpNubapLFdjNL9tP06Sr+GZkrIHEXLWvOGsytACUrkbeIdjO5g77m00BrHTznnlcNqgmn7pCN192TBA==", - "dependencies": { - "ssr-window": "^4.0.0" - } - }, "node_modules/dunder-proto": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", @@ -3721,37 +3566,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/html-void-elements": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", - "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/i18next": { - "version": "23.16.8", - "resolved": "https://registry.npmjs.org/i18next/-/i18next-23.16.8.tgz", - "integrity": "sha512-06r/TitrM88Mg5FdUXAKL96dJMzgqLE5dv3ryBAra4KCwD9mJ4ndOTS95ZuymIGoE+2hzfdaMak2X11/es7ZWg==", - "funding": [ - { - "type": "individual", - "url": "https://locize.com" - }, - { - "type": "individual", - "url": "https://locize.com/i18next.html" - }, - { - "type": "individual", - "url": "https://www.i18next.com/how-to/faq#i18next-is-awesome.-how-can-i-support-the-project" - } - ], - "dependencies": { - "@babel/runtime": "^7.23.2" - } - }, "node_modules/iconv-lite": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", @@ -4500,23 +4314,6 @@ "resolved": "https://registry.npmjs.org/namespace-emitter/-/namespace-emitter-2.0.1.tgz", "integrity": "sha512-N/sMKHniSDJBjfrkbS/tpkPj4RAbvW3mr8UAzvlMHyun93XEm83IAvhWtJVHo+RHn/oO8Job5YN4b+wRjSVp5g==" }, - "node_modules/nanoid": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.5.tgz", - "integrity": "sha512-Ir/+ZpE9fDsNH0hQ3C68uyThDXzYcim2EqcZ8zn8Chtt1iylPT9xXJB0kPCnqzgcEGikO9RxSrh63MsmVCU7Fw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "bin": { - "nanoid": "bin/nanoid.js" - }, - "engines": { - "node": "^18 || >=20" - } - }, "node_modules/nanopop": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/nanopop/-/nanopop-2.4.2.tgz", @@ -5441,14 +5238,6 @@ "dev": true, "peer": true }, - "node_modules/scroll-into-view-if-needed": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/scroll-into-view-if-needed/-/scroll-into-view-if-needed-3.1.0.tgz", - "integrity": "sha512-49oNpRjWRvnU8NyGVmUaYG4jtTkNonFZI86MmGRDqBphEK2EXT9gdEUoQPZhuBM8yWHxCWbobltqYO5M4XrUvQ==", - "dependencies": { - "compute-scroll-into-view": "^3.0.2" - } - }, "node_modules/select": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", @@ -5523,27 +5312,6 @@ "node": ">=8" } }, - "node_modules/slate": { - "version": "0.82.1", - "resolved": "https://registry.npmjs.org/slate/-/slate-0.82.1.tgz", - "integrity": "sha512-3mdRdq7U3jSEoyFrGvbeb28hgrvrr4NdFCtJX+IjaNvSFozY0VZd/CGHF0zf/JDx7aEov864xd5uj0HQxxEWTQ==", - "dependencies": { - "immer": "^9.0.6", - "is-plain-object": "^5.0.0", - "tiny-warning": "^1.0.3" - } - }, - "node_modules/slate-history": { - "version": "0.109.0", - "resolved": "https://registry.npmjs.org/slate-history/-/slate-history-0.109.0.tgz", - "integrity": "sha512-DHavPwrTTAEAV66eAocB3iQHEj65N6IVtbRK98ZuqGT0S44T3zXlhzY+5SZ7EPxRcoOYVt1dioRxXYM/+PmCiQ==", - "dependencies": { - "is-plain-object": "^5.0.0" - }, - "peerDependencies": { - "slate": ">=0.65.3" - } - }, "node_modules/slice-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", @@ -5650,11 +5418,6 @@ "specificity": "bin/specificity" } }, - "node_modules/ssr-window": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/ssr-window/-/ssr-window-4.0.2.tgz", - "integrity": "sha512-ISv/Ch+ig7SOtw7G2+qkwfVASzazUnvlDTwypdLoPoySv+6MqlOV10VwPSE6EWkGjhW50lUmghPmpYZXMu/+AQ==" - }, "node_modules/string-width": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", diff --git a/package.json b/package.json index 1135fe3..c34d8b7 100644 --- a/package.json +++ b/package.json @@ -19,9 +19,8 @@ "type": "module", "dependencies": { "@ant-design/icons-vue": "^7.0.1", - "@wangeditor-next/editor": "5.6.34", - "@wangeditor-next/editor-for-vue": "5.1.14", - "@wangeditor/editor": "^5.1.23", + "@wangeditor/editor": "^5.0.1", + "@wangeditor/editor-for-vue": "^5.1.11", "ant-design-vue": "4.2.5", "axios": "1.6.8", "clipboard": "2.0.11", diff --git a/src/components/framework/wangeditor/index.vue b/src/components/framework/wangeditor/index.vue index c67e00f..b0dbde1 100644 --- a/src/components/framework/wangeditor/index.vue +++ b/src/components/framework/wangeditor/index.vue @@ -26,7 +26,8 @@ import { FILE_FOLDER_TYPE_ENUM } from '/@/constants/support/file-const'; import { caseClinicalArticleApi } from '/@/api/business/case-clinical-article/case-clinical-article-api'; import '@wangeditor/editor/dist/css/style.css'; - import { Editor, Toolbar } from '@wangeditor-next/editor-for-vue'; + import { Editor, Toolbar } from '@wangeditor/editor-for-vue'; + //import { Editor, Toolbar } from '@wangeditor-next/editor-for-vue'; import { smartSentry } from '/@/lib/smart-sentry'; import { SmartLoading } from '/@/components/framework/smart-loading'; //菜单 @@ -127,6 +128,7 @@ }; const handleChange = (editor) => { + console.log(editorHtml.value) emit('update:modelValue', editorHtml.value); }; diff --git a/src/views/business/case-clinical-article/case-clinical-article-form.vue b/src/views/business/case-clinical-article/case-clinical-article-form.vue index 79c9660..45d53b2 100644 --- a/src/views/business/case-clinical-article/case-clinical-article-form.vue +++ b/src/views/business/case-clinical-article/case-clinical-article-form.vue @@ -756,6 +756,8 @@ const rubricToolbarConfig = { // 点击确定,验证表单 async function onSubmit() { + form.articleContent = rubricRef.value.getHtml(); + try { // 只有在非外部链接模式下才获取内容 if (!isLinkChecked.value) { @@ -766,9 +768,11 @@ const rubricToolbarConfig = { form.articleContentText = form.articleContent.replace(/<[^>]*>/g, ''); } } + await formRef.value.validateFields(); save(); } catch (err) { + console.error(err); message.error('参数验证错误,请仔细填写表单数据!'); } }