From da241402f21ca21dd7e20f7afdec676f356006ce Mon Sep 17 00:00:00 2001 From: X1627315083 <1627315083@qq.com> Date: Mon, 22 Sep 2025 14:09:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=B0=B7=E6=AD=8C=E7=99=BB?= =?UTF-8?q?=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components.d.ts | 3 ++ src/component/Account/frontPage/bindPage.vue | 31 ++++++++----- src/component/LoginPage/googleLogin.vue | 45 +++++++++++++------ .../home/tools/poseTransfer/index.vue | 9 +++- 4 files changed, 62 insertions(+), 26 deletions(-) diff --git a/components.d.ts b/components.d.ts index 913c1433..41863ac0 100644 --- a/components.d.ts +++ b/components.d.ts @@ -10,10 +10,12 @@ declare module 'vue' { export interface GlobalComponents { ABadge: typeof import('ant-design-vue/es')['Badge'] ACheckbox: typeof import('ant-design-vue/es')['Checkbox'] + AConfigProvider: typeof import('ant-design-vue/es')['ConfigProvider'] ADrawer: typeof import('ant-design-vue/es')['Drawer'] AImage: typeof import('ant-design-vue/es')['Image'] AInputNumber: typeof import('ant-design-vue/es')['InputNumber'] AModal: typeof import('ant-design-vue/es')['Modal'] + APagination: typeof import('ant-design-vue/es')['Pagination'] APopover: typeof import('ant-design-vue/es')['Popover'] ARangePicker: typeof import('ant-design-vue/es')['RangePicker'] ASelect: typeof import('ant-design-vue/es')['Select'] @@ -25,6 +27,7 @@ declare module 'vue' { ATabPane: typeof import('ant-design-vue/es')['TabPane'] ATabs: typeof import('ant-design-vue/es')['Tabs'] AUpload: typeof import('ant-design-vue/es')['Upload'] + ElCascader: typeof import('element-plus/es')['ElCascader'] RouterLink: typeof import('vue-router')['RouterLink'] RouterView: typeof import('vue-router')['RouterView'] } diff --git a/src/component/Account/frontPage/bindPage.vue b/src/component/Account/frontPage/bindPage.vue index 0557f7e9..61e81949 100644 --- a/src/component/Account/frontPage/bindPage.vue +++ b/src/component/Account/frontPage/bindPage.vue @@ -27,10 +27,10 @@
--> -
- - - +
+ +
+
@@ -138,12 +138,13 @@ export default defineComponent({ bindPageDom.bindEmail.init('Modify') } - const toGmailLogin = ()=>{ - message.info(t('account.canNotUtilize')) - } onMounted(async ()=>{ - return - let GOOGLE_CLIENT_ID = '29310152396-nnsd3h533fld665oguu8ovrt1nukmt46.apps.googleusercontent.com' + let GOOGLE_CLIENT_ID + if(import.meta.env.VITE_USER_NODE_ENV == 'development'){ + GOOGLE_CLIENT_ID = '157095842121-kdd1fdf8m8nudvj9sprstb2k2prnf9e4.apps.googleusercontent.com' + }else{ + GOOGLE_CLIENT_ID = '29310152396-nnsd3h533fld665oguu8ovrt1nukmt46.apps.googleusercontent.com' + } var existingScript = document.querySelector(`script[src="${data.scriptSrc}"]`); if(!window.isAddGmail){ if(!existingScript){ @@ -206,7 +207,6 @@ export default defineComponent({ ungroupGoogleModel, ungroupWeiXinModel, modifyEmail, - toGmailLogin, } }, data(){ @@ -271,14 +271,21 @@ export default defineComponent({ } >.gmail_btn{ position: relative; + border-radius: 4rem; + overflow: hidden; + > .gallery_btn{ + position: relative; + z-index: 2; + pointer-events: none; + } #g_id_bind{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; - opacity: 0; - z-index: 2; + // opacity: 0; + z-index: 1; :deep(.nsm7Bb-HzV7m-LgbsSe.Bz112c-LgbsSe){ width: 100%; } diff --git a/src/component/LoginPage/googleLogin.vue b/src/component/LoginPage/googleLogin.vue index 7dc52a2a..47839f26 100644 --- a/src/component/LoginPage/googleLogin.vue +++ b/src/component/LoginPage/googleLogin.vue @@ -3,8 +3,8 @@
-
+
{{ $props.text }}
@@ -26,6 +26,20 @@ }, setup(props, { emit }) { const {t} = useI18n() + function decodeJWT(token) { + + let base64Url = token.split(".")[1]; + let base64 = base64Url.replace(/-/g, "+").replace(/_/g, "/"); + let jsonPayload = decodeURIComponent( + atob(base64) + .split("") + .map(function (c) { + return "%" + ("00" + c.charCodeAt(0).toString(16)).slice(-2); + }) + .join("") + ); + return JSON.parse(jsonPayload); + } const handleCredentialResponse = async (response) => { // 获取回调响应的凭证数据 然后拿这个凭证给后台,后台jwt进行解析获取登录信息 console.log("Encoded JWT ID token: " + response.credential); @@ -63,11 +77,11 @@ window.isAddGmail = true await new Promise((resolve, reject) => { const script = document.createElement("script"); - script.src = data.scriptSrc script.onload=()=>{ resolve() } document.body.appendChild(script); + script.src = data.scriptSrc }) } window.google.accounts.id.initialize({ @@ -79,15 +93,16 @@ ux_mode:"popup", itp_support:true, }); + console.log(document.querySelector('.Container #g_id_signin')) window.google.accounts.id.renderButton( - document.querySelector('.Container #g_id_signin'), - { - type:"standard",//icon为只有一个icon - shape:"circle", - theme:"outline", - size:"large", - logo_alignment:"center", - }); + document.querySelector('.Container #g_id_signin'), + { + type:"standard",//icon为只有一个icon + shape:"circle", + theme:"outline", + size:"large", + logo_alignment:"center", + }); } } const toGmailLogin = ()=>{ @@ -132,7 +147,6 @@ // width: 100%; // height: 100%; // } - // } .icon{ // width: 40px; @@ -176,15 +190,20 @@ position: absolute; width: 100%; height: 100%; - overflow: hidden; + // overflow: hidden; top: 0; left: 0; - opacity: 0; + // opacity: 0; .S9gUrf-YoZ4jf{ + + } :deep(.S9gUrf-YoZ4jf){ width: 100%; height: 100%; + iframe{ + zoom: 3; + } } } &:hover{ diff --git a/src/component/home/tools/poseTransfer/index.vue b/src/component/home/tools/poseTransfer/index.vue index eb55a24f..90718e65 100644 --- a/src/component/home/tools/poseTransfer/index.vue +++ b/src/component/home/tools/poseTransfer/index.vue @@ -408,6 +408,7 @@ export default defineComponent({ if(res.errCode == 0){ file.imgUrl = res.data.url; file.id = res.data.id + data.currentList.forEach((listItem:any)=>listItem.isChecked = false) data.fileList.forEach((listItem:any)=>{ if(listItem.id == file.id){ listItem.isChecked = true @@ -415,7 +416,6 @@ export default defineComponent({ listItem.isChecked = false } }) - data.currentList.forEach((listItem:any)=>listItem.isChecked = false) file.type = 'ProductElement' // if(props.productimgMenu.value == 'Relight'){ // file.type = "ToProductImage" @@ -553,6 +553,13 @@ export default defineComponent({ watch(()=>store.state.HomeStoreModule.uploadElement.length,(newVal,oldVal)=>{ if(props.isDesignPage)return data.fileList = store.state.HomeStoreModule.uploadElement + data.fileList.forEach((listItem:any)=>{ + if(listItem.id == data.selectImg.id){ + listItem.isChecked = true + }else{ + listItem.isChecked = false + } + }) }) watch(()=>data.noLikeList.length,(newVal,oldVal)=>{ nextTick(()=>{