From 7f77b663f52d7639f02e4a18d1d6e3c271ddc948 Mon Sep 17 00:00:00 2001 From: rd <1344903914@qq.com> Date: Tue, 12 Aug 2025 13:53:54 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=9B=BE=E7=89=87=E6=8B=96=E6=8B=BD?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E5=A4=84=E7=90=86=EF=BC=8CVueDraggable?= =?UTF-8?q?=E4=B8=8D=E6=94=AF=E6=8C=81jsx=E5=86=99=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../explore/detail/index.vue | 6 +- .../explore/detail/style.scss | 1 + .../explore/list/index.vue | 12 +-- .../explore/list/style.scss | 1 + .../components/edit-form/img-box.vue | 99 +++++++++++++++++++ .../components/edit-form/index.vue | 69 +++---------- .../components/edit-form/img-box.vue | 99 +++++++++++++++++++ .../manuscript/components/edit-form/index.vue | 69 +++---------- 8 files changed, 237 insertions(+), 119 deletions(-) create mode 100644 src/views/creative-generation-workshop/manuscript-writer/components/edit-form/img-box.vue create mode 100644 src/views/creative-generation-workshop/manuscript/components/edit-form/img-box.vue diff --git a/src/views/creative-generation-workshop/explore/detail/index.vue b/src/views/creative-generation-workshop/explore/detail/index.vue index aa97556..da84dd6 100644 --- a/src/views/creative-generation-workshop/explore/detail/index.vue +++ b/src/views/creative-generation-workshop/explore/detail/index.vue @@ -220,9 +220,9 @@ export default { {loading.value ? ( - + ) : ( -
+
(isExpand.value = true)}>
@@ -261,7 +261,7 @@ export default { onDeleteComment={onDeleteComment} /> )} -
+ )} ); diff --git a/src/views/creative-generation-workshop/explore/detail/style.scss b/src/views/creative-generation-workshop/explore/detail/style.scss index c842ee8..01e8a64 100644 --- a/src/views/creative-generation-workshop/explore/detail/style.scss +++ b/src/views/creative-generation-workshop/explore/detail/style.scss @@ -34,6 +34,7 @@ flex: 1; display: flex; justify-content: center; + background: #fff; .explore-detail-wrap { min-height: 500px; width: 684px; diff --git a/src/views/creative-generation-workshop/explore/list/index.vue b/src/views/creative-generation-workshop/explore/list/index.vue index 9b45f01..aea464a 100644 --- a/src/views/creative-generation-workshop/explore/list/index.vue +++ b/src/views/creative-generation-workshop/explore/list/index.vue @@ -50,10 +50,10 @@ export default { - {loading.value ? ( - - ) : ( -
+
+ {loading.value ? ( + + ) : (
@@ -99,8 +99,8 @@ export default {
-
- )} + )} +
); }; diff --git a/src/views/creative-generation-workshop/explore/list/style.scss b/src/views/creative-generation-workshop/explore/list/style.scss index 76cf130..b315e92 100644 --- a/src/views/creative-generation-workshop/explore/list/style.scss +++ b/src/views/creative-generation-workshop/explore/list/style.scss @@ -26,6 +26,7 @@ } } .page-wrapper { + background: #fff; min-height: calc(100vh - $navbar-height); .explore-container { width: 1200px; diff --git a/src/views/creative-generation-workshop/manuscript-writer/components/edit-form/img-box.vue b/src/views/creative-generation-workshop/manuscript-writer/components/edit-form/img-box.vue new file mode 100644 index 0000000..0746114 --- /dev/null +++ b/src/views/creative-generation-workshop/manuscript-writer/components/edit-form/img-box.vue @@ -0,0 +1,99 @@ + + + + + diff --git a/src/views/creative-generation-workshop/manuscript-writer/components/edit-form/index.vue b/src/views/creative-generation-workshop/manuscript-writer/components/edit-form/index.vue index 4f483fb..a4c5888 100644 --- a/src/views/creative-generation-workshop/manuscript-writer/components/edit-form/index.vue +++ b/src/views/creative-generation-workshop/manuscript-writer/components/edit-form/index.vue @@ -4,6 +4,7 @@ import { Form, FormItem, Input, Textarea, Upload, Message as AMessage, Button } import CommonSelect from '@/components/common-select'; import { VueDraggable } from 'vue-draggable-plus'; import TextOverTips from '@/components/text-over-tips'; +import ImgBox from './img-box'; import { formatFileSize, getVideoInfo, formatDuration, formatUploadSpeed } from '@/utils/tools'; import { getProjectList } from '@/api/all/propertyMarketing'; @@ -293,60 +294,9 @@ export default { ); }; - const renderImage = () => { - return ( - ( -
- 图片 - {`(${formData.value.files?.length ?? 0}/18)`} - 第一张为首图,支持拖拽排序 -
- ), - }} - > -
- {/* 已上传的图片列表 */} - - {formData.value.files?.map((file, index) => ( -
-
- -
-
- ))} -
- {formData.value.files?.length < 18 && ( - - {{ - 'upload-button': () => ( -
- - 上传图片 -
- ), - }} -
- )} -
-
- ); + const handleImagesChange = (files) => { + formData.value.files = cloneDeep(files); + onChange(); }; // 暴露方法 @@ -392,7 +342,16 @@ export default { auto-size={{ minRows: 7, maxRows: 12 }} /> - {isVideo.value ? renderVideo() : renderImage()} + {isVideo.value ? ( + renderVideo() + ) : ( + + )} {/* + + +
+ +
+
+ +
+
+ + + +
+
+
+ + + + + diff --git a/src/views/creative-generation-workshop/manuscript/components/edit-form/index.vue b/src/views/creative-generation-workshop/manuscript/components/edit-form/index.vue index 4f483fb..a4c5888 100644 --- a/src/views/creative-generation-workshop/manuscript/components/edit-form/index.vue +++ b/src/views/creative-generation-workshop/manuscript/components/edit-form/index.vue @@ -4,6 +4,7 @@ import { Form, FormItem, Input, Textarea, Upload, Message as AMessage, Button } import CommonSelect from '@/components/common-select'; import { VueDraggable } from 'vue-draggable-plus'; import TextOverTips from '@/components/text-over-tips'; +import ImgBox from './img-box'; import { formatFileSize, getVideoInfo, formatDuration, formatUploadSpeed } from '@/utils/tools'; import { getProjectList } from '@/api/all/propertyMarketing'; @@ -293,60 +294,9 @@ export default { ); }; - const renderImage = () => { - return ( - ( -
- 图片 - {`(${formData.value.files?.length ?? 0}/18)`} - 第一张为首图,支持拖拽排序 -
- ), - }} - > -
- {/* 已上传的图片列表 */} - - {formData.value.files?.map((file, index) => ( -
-
- -
-
- ))} -
- {formData.value.files?.length < 18 && ( - - {{ - 'upload-button': () => ( -
- - 上传图片 -
- ), - }} -
- )} -
-
- ); + const handleImagesChange = (files) => { + formData.value.files = cloneDeep(files); + onChange(); }; // 暴露方法 @@ -392,7 +342,16 @@ export default { auto-size={{ minRows: 7, maxRows: 12 }} />
- {isVideo.value ? renderVideo() : renderImage()} + {isVideo.value ? ( + renderVideo() + ) : ( + + )} {/*