From a720fba84e47a0d81b2f1c734b387a11718d99d4 Mon Sep 17 00:00:00 2001
From: X1627315083 <1627315083@qq.com>
Date: Fri, 16 Jan 2026 13:39:00 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=8D=B0=E8=8A=B1=E7=BA=BF?=
=?UTF-8?q?=E7=A8=BF=E5=90=88=E6=88=90=E5=9B=BE=E6=98=BE=E7=A4=BA=E5=BC=82?=
=?UTF-8?q?=E5=B8=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/component/Detail/DesignDetail.vue | 24 +++++-
src/component/Detail/canvas/index.vue | 84 +++++++++++--------
.../Detail/detailRight/editPrintElement.vue | 21 ++---
src/component/Detail/detailRight/index.vue | 10 ++-
src/store/Detail/designDetail.ts | 19 +++++
5 files changed, 106 insertions(+), 52 deletions(-)
diff --git a/src/component/Detail/DesignDetail.vue b/src/component/Detail/DesignDetail.vue
index 7e229bdb..42ffc847 100644
--- a/src/component/Detail/DesignDetail.vue
+++ b/src/component/Detail/DesignDetail.vue
@@ -85,7 +85,7 @@
" alt="">
@@ -141,7 +141,11 @@ export default defineComponent({
type: {
type: String,
default: 'print',
- }
+ },
+ sketchSize:{
+ type:Object,
+ default:()=>{}
+ },
},
setup(props,{emit}) {
const { t } = useI18n()
@@ -352,18 +356,9 @@ export default defineComponent({
}
editPrintElementData.printZIndex++
item.pattern = pattern
- function isJSONString(str) {
- try {
- JSON.parse(str);
- return true; // 解析成功,是有效的JSON字符串
- } catch (e) {
- return false; // 解析失败,不是有效的JSON字符串
- }
- }
+
if(item.object){
- if(isJSONString(item.object)){
- item.object = JSON.parse(item.object)
- }
+
}else{
item.object = {
top: 0,
diff --git a/src/component/Detail/detailRight/index.vue b/src/component/Detail/detailRight/index.vue
index 8ce41684..d835f5d8 100644
--- a/src/component/Detail/detailRight/index.vue
+++ b/src/component/Detail/detailRight/index.vue
@@ -6,8 +6,8 @@
-->
-
-
+
+
@@ -24,6 +24,12 @@ export default defineComponent({
components:{
sketchType,printType,editPrintElement,modelsType
},
+ props:{
+ sketchSize:{
+ type:Object,
+ default:()=>{}
+ },
+ },
setup(props,{emit}) {
const store = useStore();
const detailData = reactive({
diff --git a/src/store/Detail/designDetail.ts b/src/store/Detail/designDetail.ts
index e2bf5948..4c92a6c7 100644
--- a/src/store/Detail/designDetail.ts
+++ b/src/store/Detail/designDetail.ts
@@ -54,6 +54,25 @@ const DesignDetail : Module = {
data.clothes.forEach((v:any,index:any)=>{
// if(!v?.partialDesignDTO){
// }
+ function isJSONString(str) {
+ try {
+ JSON.parse(str);
+ return true; // 解析成功,是有效的JSON字符串
+ } catch (e) {
+ return false; // 解析失败,不是有效的JSON字符串
+ }
+ }
+ v?.printObject?.prints?.forEach((item:any) => {
+ console.log(item.object)
+ if(isJSONString(item.object)){
+ item.object = JSON.parse(item.object)
+ }
+ });
+ v?.trims?.prints?.forEach((item:any) => {
+ if(isJSONString(item.object)){
+ item.object = JSON.parse(item.object)
+ }
+ });
for (let i = v.layersObject.length-1; i >= 0; i--) {
v.layersObject[i].style = {
top:v.layersObject[i].position?.[0],