-
+
.header-menu { - height: 52px; + height: 5.2rem; overflow: hidden; display: flex; align-items: center; - padding: 0 20px; + padding: 0 2rem; border-bottom: 1px solid #e0e0e0; background-color: #ffffff; } @@ -1204,12 +1204,12 @@ defineExpose({ .zoom-info { position: absolute; - bottom: 10px; - right: 10px; + bottom: 1rem; + right: 1rem; background: rgba(255, 255, 255, 0.7); - padding: 5px 10px; - border-radius: 4px; - font-size: 14px; + padding: .5rem 1rem; + border-radius: .4rem; + font-size: 1.4rem; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); color: #666; display: flex; @@ -1217,42 +1217,42 @@ defineExpose({ .zoom-hint { position: absolute; - top: 10px; - left: 10px; + top: 1rem; + left: 1rem; background: rgba(255, 255, 255, 0.8); - padding: 5px 10px; - border-radius: 4px; - font-size: 12px; + padding: .5rem 1rem; + border-radius: .4rem; + font-size: 1.2rem; color: #666; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); } .reset-zoom { - margin-left: 10px; + margin-left: 1rem; cursor: pointer; - padding: 2px 5px; - font-size: 12px; + padding: .2rem .5rem; + font-size: 1.2rem; border: 1px solid #ddd; background: #f8f8f8; - border-radius: 3px; + border-radius: .3rem; } .footer-actions { display: flex; justify-content: center; - gap: 10px; - padding: 15px; + gap: 1rem; + padding: 1.5rem; border-top: 1px solid #e0e0e0; } .share-btn, .export-btn { - padding: 8px 20px; + padding: .8rem 2rem; border: none; - border-radius: 20px; + border-radius: 2rem; background-color: #000; color: #fff; - font-size: 14px; + font-size: 1.4rem; font-weight: 500; cursor: pointer; transition: all 0.2s ease; @@ -1264,7 +1264,7 @@ defineExpose({ } button { - font-size: 13px; + font-size: 1.3rem; transition: all 0.2s; } @@ -1273,10 +1273,10 @@ button:hover { } .help-btn { - margin-left: 10px; + margin-left: 1rem; cursor: pointer; - width: 24px; - height: 24px; + width: 2.4rem; + height: 2.4rem; border-radius: 50%; background-color: #f0f0f0; border: 1px solid #ddd; @@ -1306,54 +1306,54 @@ button:hover { .modal-content { position: relative; width: 80%; - max-width: 600px; + max-width: 60rem; max-height: 90vh; overflow-y: auto; background-color: #fff; - border-radius: 8px; - padding: 20px; + border-radius: .8rem; + padding: 2rem; } .close-modal { position: absolute; - top: 10px; - right: 10px; - width: 30px; - height: 30px; + top: 1rem; + right: 1rem; + width: 3rem; + height: 3rem; border-radius: 50%; border: none; background-color: #f0f0f0; display: flex; align-items: center; justify-content: center; - font-size: 20px; + font-size: 2rem; cursor: pointer; } /* 网格控制面板样式 */ .grid-controls { position: absolute; - bottom: 115px; - right: 10px; + bottom: 11.5rem; + right: 1rem; background: rgba(255, 255, 255, 0.9); - padding: 10px; - border-radius: 4px; + padding: 1rem; + border-radius: .4rem; box-shadow: 0 1px 5px rgba(0, 0, 0, 0.2); display: flex; flex-direction: column; - gap: 8px; + gap: .8rem; z-index: 5; } .layers-panel { position: absolute; - right: 20px; - top: 10px; + right: 2rem; + top: 1rem; transition: width 0.3s ease; background: #fff; - width: 350px; + width: 35rem; max-height: 85vh; - box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1); /* 添加阴影效果 */ + box-shadow: 0 .4rem 2rem rgba(0, 0, 0, 0.1); /* 添加阴影效果 */ backdrop-filter: blur(2px); /* 添加模糊效果 */ -webkit-backdrop-filter: blur(2px); background-color: rgba(255, 255, 255, 0.95); /* 改为白色背景 */ @@ -1363,13 +1363,13 @@ button:hover { &::before { content: ""; position: absolute; - top: -9px; - right: 6px; + top: -.9rem; + right: .6rem; width: 0; height: 0; - border-left: 10px solid transparent; - border-right: 10px solid transparent; - border-bottom: 10px solid rgba(255, 255, 255, 0.95); /* 与面板背景色一致 */ + border-left: 1rem solid transparent; + border-right: 1rem solid transparent; + border-bottom: 1rem solid rgba(255, 255, 255, 0.95); /* 与面板背景色一致 */ filter: drop-shadow(0 -1px 1px rgba(0, 0, 0, 0.05)); z-index: 1; } @@ -1377,40 +1377,40 @@ button:hover { /* 添加触控设备的样式调整 */ @media (pointer: coarse) { .tool-btn { - width: 44px; - height: 44px; - font-size: 18px; + width: 4.4rem; + height: 4.4rem; + font-size: 1.8rem; } .layers-panel { - width: 280px; + width: 28rem; } .layer-item, .element-item { - padding: 12px 8px; + padding: 1.2rem .8rem; } .element-action-btn, .element-delete-btn { - width: 24px; - height: 24px; + width: 2.4rem; + height: 2.4rem; } .help-btn { - width: 32px; - height: 32px; + width: 3.2rem; + height: 3.2rem; } .modal-content { width: 90%; - padding: 16px; + padding: 1.6rem; } .close-modal { - width: 40px; - height: 40px; - font-size: 24px; + width: 4rem; + height: 4rem; + font-size: 2.4rem; } } @@ -1422,6 +1422,6 @@ button:hover { .fade-enter-from, .fade-leave-to { opacity: 0; - transform: translateY(10px); + transform: translateY(1rem); } diff --git a/src/component/Canvas/ExistsImageList/ToolButton.vue b/src/component/Canvas/ExistsImageList/ToolButton.vue index ff93eb5a..df816c72 100644 --- a/src/component/Canvas/ExistsImageList/ToolButton.vue +++ b/src/component/Canvas/ExistsImageList/ToolButton.vue @@ -70,8 +70,8 @@ const handleClick = () => { \ No newline at end of file diff --git a/src/component/home/tools/poseTransfer/index.vue b/src/component/home/tools/poseTransfer/index.vue index 976aa6ef..48c762c1 100644 --- a/src/component/home/tools/poseTransfer/index.vue +++ b/src/component/home/tools/poseTransfer/index.vue @@ -147,7 +147,7 @@ export default defineComponent({ default:'', }, }, - emits:[], + emit:['unLike'], setup(props,{emit}) { const {t} = useI18n() const store = useStore(); @@ -474,6 +474,9 @@ export default defineComponent({ projectId:store.state.Workspace.probjects.id, collectionSortParentId:props.isDesignPage?item.parentId:'', } + if(props.isDesignPage){ + emit('unLike',item) + } } Https.axiosPost(Https.httpUrls.poselikeOrDisike, {},{params:value}).then( (rv) => { diff --git a/src/component/home/tools/toProduct/index.vue b/src/component/home/tools/toProduct/index.vue index b40017be..b1d4241c 100644 --- a/src/component/home/tools/toProduct/index.vue +++ b/src/component/home/tools/toProduct/index.vue @@ -237,6 +237,7 @@ export default defineComponent({ default:false, }, }, + emit:['unLike'], setup(props,{emit}) { const store = useStore(); let userDetail:any= computed(()=>{ @@ -476,7 +477,6 @@ export default defineComponent({ }) } let likeFile = (item:any,str:any,index:any) =>{ - console.log(item) let url let data = { toProductImageResultId:[item.id], @@ -487,6 +487,9 @@ export default defineComponent({ url = Https.httpUrls.productImageLike }else{ url = Https.httpUrls.productImageUnLike + if(props.isDesignPage){ + emit('unLike',item) + } } Https.axiosPost(url, data).then( (rv) => { diff --git a/src/store/Detail/designDetailCopy.ts b/src/store/Detail/designDetailCopy.ts index 5a1594d2..5b47dc2b 100644 --- a/src/store/Detail/designDetailCopy.ts +++ b/src/store/Detail/designDetailCopy.ts @@ -126,8 +126,7 @@ const DesignDetailCopy : Module = { } }, setCurrentPrintElement(state,data){//临时存放印花和元素点击用来监听在衣服上添加元素 - if(!data)return - state.currentPrintElement = data.resData || data + state.currentPrintElement = data?.resData || data }, setCurrentDetailType(state,data){ if(state.selectDetail && state.selectDetail.id){ diff --git a/src/tool/https.js b/src/tool/https.js index c5091eca..11a17cb1 100644 --- a/src/tool/https.js +++ b/src/tool/https.js @@ -101,6 +101,7 @@ axios.interceptors.response.use((res) =>{ } }, function(error) { if(error?.response?.status === 401 && router.currentRoute._value.name != 'setIdentification'){//如果是记录浏览器页面就不跳转login + return clonAllCookie() if(!isLoginTime){ isLoginTime = true diff --git a/src/tool/mdEvent.js b/src/tool/mdEvent.js index 014edcb7..9e109d17 100644 --- a/src/tool/mdEvent.js +++ b/src/tool/mdEvent.js @@ -1,6 +1,6 @@ const getMousePosition = (e,bor,dom) => { e.stopPropagation() - // if(e?.preventDefault)e.preventDefault(); + if(e?.preventDefault)e.preventDefault(); if(bor){ const touch = e.changedTouches[0]; event = { diff --git a/src/views/HomeView/library.vue b/src/views/HomeView/library.vue index cd0b05ef..c42f0aea 100644 --- a/src/views/HomeView/library.vue +++ b/src/views/HomeView/library.vue @@ -437,7 +437,7 @@
{{ item.label }}
@@ -868,10 +868,10 @@ export default defineComponent({ const saveBase64Img = (rv)=>{ let item = imgList.value[pageData.editIndex] if(uploadGenerate.value !='Upload'){ - item = generateList.value[selectCode.value] + item = generateList.value[selectCode.value][pageData.editIndex] item.designType = 'Generate' item.level1Type = selectCode.value - return + item.level2Type = item.category } let data = { "base64": rv, @@ -891,6 +891,7 @@ export default defineComponent({ // rv.categoryValue = props.item?.categoryValue // props.list[props.index] = rv item.url = rv.url + item.imgUrl = rv.url } ).catch(res=>{ }); @@ -992,10 +993,16 @@ export default defineComponent({ if(newVal.value == 'extract'){ this.speedData = this.extractList[0] }else if(newVal.value == 'Logo' || newVal.value == 'Slogan'){ - this.speedData.value = '' - this.speedData.label = '' + this.speedData = { + value:'', + label:'' + } }else{ - this.speedData = this.speedList[0] + if(newVal.value == "Pattern"){ + this.speedData = this.speedList[1] + }else{ + this.speedData = this.speedList[0] + } } this.speedState = false }