修复谷歌登录
This commit is contained in:
3
components.d.ts
vendored
3
components.d.ts
vendored
@@ -10,10 +10,12 @@ declare module 'vue' {
|
|||||||
export interface GlobalComponents {
|
export interface GlobalComponents {
|
||||||
ABadge: typeof import('ant-design-vue/es')['Badge']
|
ABadge: typeof import('ant-design-vue/es')['Badge']
|
||||||
ACheckbox: typeof import('ant-design-vue/es')['Checkbox']
|
ACheckbox: typeof import('ant-design-vue/es')['Checkbox']
|
||||||
|
AConfigProvider: typeof import('ant-design-vue/es')['ConfigProvider']
|
||||||
ADrawer: typeof import('ant-design-vue/es')['Drawer']
|
ADrawer: typeof import('ant-design-vue/es')['Drawer']
|
||||||
AImage: typeof import('ant-design-vue/es')['Image']
|
AImage: typeof import('ant-design-vue/es')['Image']
|
||||||
AInputNumber: typeof import('ant-design-vue/es')['InputNumber']
|
AInputNumber: typeof import('ant-design-vue/es')['InputNumber']
|
||||||
AModal: typeof import('ant-design-vue/es')['Modal']
|
AModal: typeof import('ant-design-vue/es')['Modal']
|
||||||
|
APagination: typeof import('ant-design-vue/es')['Pagination']
|
||||||
APopover: typeof import('ant-design-vue/es')['Popover']
|
APopover: typeof import('ant-design-vue/es')['Popover']
|
||||||
ARangePicker: typeof import('ant-design-vue/es')['RangePicker']
|
ARangePicker: typeof import('ant-design-vue/es')['RangePicker']
|
||||||
ASelect: typeof import('ant-design-vue/es')['Select']
|
ASelect: typeof import('ant-design-vue/es')['Select']
|
||||||
@@ -25,6 +27,7 @@ declare module 'vue' {
|
|||||||
ATabPane: typeof import('ant-design-vue/es')['TabPane']
|
ATabPane: typeof import('ant-design-vue/es')['TabPane']
|
||||||
ATabs: typeof import('ant-design-vue/es')['Tabs']
|
ATabs: typeof import('ant-design-vue/es')['Tabs']
|
||||||
AUpload: typeof import('ant-design-vue/es')['Upload']
|
AUpload: typeof import('ant-design-vue/es')['Upload']
|
||||||
|
ElCascader: typeof import('element-plus/es')['ElCascader']
|
||||||
RouterLink: typeof import('vue-router')['RouterLink']
|
RouterLink: typeof import('vue-router')['RouterLink']
|
||||||
RouterView: typeof import('vue-router')['RouterView']
|
RouterView: typeof import('vue-router')['RouterView']
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,10 +27,10 @@
|
|||||||
<div v-show="!userDetail.accountExtendList?.Google" id="g_id_bind"></div>
|
<div v-show="!userDetail.accountExtendList?.Google" id="g_id_bind"></div>
|
||||||
<div v-if="userDetail.accountExtendList?.Google" class="gallery_btn" @click="ungroupGoogleModel">{{ $t('frontPage.Unbind') }}</div>
|
<div v-if="userDetail.accountExtendList?.Google" class="gallery_btn" @click="ungroupGoogleModel">{{ $t('frontPage.Unbind') }}</div>
|
||||||
</div> -->
|
</div> -->
|
||||||
<div class="gmail_btn" @click="toGmailLogin">
|
<div class="gmail_btn">
|
||||||
<div v-if="!userDetail.accountExtendList?.Google" class="gallery_btn forbidden">{{ $t('frontPage.BindNow') }}</div>
|
<div v-if="!userDetail.accountExtendList?.Google" class="gallery_btn">{{ $t('frontPage.BindNow') }}</div>
|
||||||
<!-- <div v-show="!userDetail.accountExtendList?.Google" id="g_id_bind"></div> -->
|
<div v-show="!userDetail.accountExtendList?.Google" id="g_id_bind"></div>
|
||||||
<div v-if="userDetail.accountExtendList?.Google" class="gallery_btn forbidden" @click="ungroupGoogleModel">{{ $t('frontPage.Unbind') }}</div>
|
<div v-if="userDetail.accountExtendList?.Google" class="gallery_btn" @click="ungroupGoogleModel">{{ $t('frontPage.Unbind') }}</div>
|
||||||
<!-- <div v-if="userDetail.accountExtendList?.Google" class="gallery_btn" @click="ungroupGoogleModel">{{ $t('frontPage.Unbind') }}</div> -->
|
<!-- <div v-if="userDetail.accountExtendList?.Google" class="gallery_btn" @click="ungroupGoogleModel">{{ $t('frontPage.Unbind') }}</div> -->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -138,12 +138,13 @@ export default defineComponent({
|
|||||||
bindPageDom.bindEmail.init('Modify')
|
bindPageDom.bindEmail.init('Modify')
|
||||||
|
|
||||||
}
|
}
|
||||||
const toGmailLogin = ()=>{
|
|
||||||
message.info(t('account.canNotUtilize'))
|
|
||||||
}
|
|
||||||
onMounted(async ()=>{
|
onMounted(async ()=>{
|
||||||
return
|
let GOOGLE_CLIENT_ID
|
||||||
let GOOGLE_CLIENT_ID = '29310152396-nnsd3h533fld665oguu8ovrt1nukmt46.apps.googleusercontent.com'
|
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}"]`);
|
var existingScript = document.querySelector(`script[src="${data.scriptSrc}"]`);
|
||||||
if(!window.isAddGmail){
|
if(!window.isAddGmail){
|
||||||
if(!existingScript){
|
if(!existingScript){
|
||||||
@@ -206,7 +207,6 @@ export default defineComponent({
|
|||||||
ungroupGoogleModel,
|
ungroupGoogleModel,
|
||||||
ungroupWeiXinModel,
|
ungroupWeiXinModel,
|
||||||
modifyEmail,
|
modifyEmail,
|
||||||
toGmailLogin,
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
data(){
|
data(){
|
||||||
@@ -271,14 +271,21 @@ export default defineComponent({
|
|||||||
}
|
}
|
||||||
>.gmail_btn{
|
>.gmail_btn{
|
||||||
position: relative;
|
position: relative;
|
||||||
|
border-radius: 4rem;
|
||||||
|
overflow: hidden;
|
||||||
|
> .gallery_btn{
|
||||||
|
position: relative;
|
||||||
|
z-index: 2;
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
#g_id_bind{
|
#g_id_bind{
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 0;
|
left: 0;
|
||||||
top: 0;
|
top: 0;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
opacity: 0;
|
// opacity: 0;
|
||||||
z-index: 2;
|
z-index: 1;
|
||||||
:deep(.nsm7Bb-HzV7m-LgbsSe.Bz112c-LgbsSe){
|
:deep(.nsm7Bb-HzV7m-LgbsSe.Bz112c-LgbsSe){
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,8 +3,8 @@
|
|||||||
<!-- 谷歌登录 -->
|
<!-- 谷歌登录 -->
|
||||||
<div class="g_id_signin" id="g_id_signin">
|
<div class="g_id_signin" id="g_id_signin">
|
||||||
</div>
|
</div>
|
||||||
<div class="icon">
|
|
||||||
<!-- <div class="icon" @click="toGmailLogin"> -->
|
<!-- <div class="icon" @click="toGmailLogin"> -->
|
||||||
|
<div class="icon">
|
||||||
<img src="@/assets/images/loginPage/gmailIcon.svg" alt="">
|
<img src="@/assets/images/loginPage/gmailIcon.svg" alt="">
|
||||||
<span>{{ $props.text }}</span>
|
<span>{{ $props.text }}</span>
|
||||||
</div>
|
</div>
|
||||||
@@ -26,6 +26,20 @@
|
|||||||
},
|
},
|
||||||
setup(props, { emit }) {
|
setup(props, { emit }) {
|
||||||
const {t} = useI18n()
|
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) => {
|
const handleCredentialResponse = async (response) => {
|
||||||
// 获取回调响应的凭证数据 然后拿这个凭证给后台,后台jwt进行解析获取登录信息
|
// 获取回调响应的凭证数据 然后拿这个凭证给后台,后台jwt进行解析获取登录信息
|
||||||
console.log("Encoded JWT ID token: " + response.credential);
|
console.log("Encoded JWT ID token: " + response.credential);
|
||||||
@@ -63,11 +77,11 @@
|
|||||||
window.isAddGmail = true
|
window.isAddGmail = true
|
||||||
await new Promise((resolve, reject) => {
|
await new Promise((resolve, reject) => {
|
||||||
const script = document.createElement("script");
|
const script = document.createElement("script");
|
||||||
script.src = data.scriptSrc
|
|
||||||
script.onload=()=>{
|
script.onload=()=>{
|
||||||
resolve()
|
resolve()
|
||||||
}
|
}
|
||||||
document.body.appendChild(script);
|
document.body.appendChild(script);
|
||||||
|
script.src = data.scriptSrc
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
window.google.accounts.id.initialize({
|
window.google.accounts.id.initialize({
|
||||||
@@ -79,15 +93,16 @@
|
|||||||
ux_mode:"popup",
|
ux_mode:"popup",
|
||||||
itp_support:true,
|
itp_support:true,
|
||||||
});
|
});
|
||||||
|
console.log(document.querySelector('.Container #g_id_signin'))
|
||||||
window.google.accounts.id.renderButton(
|
window.google.accounts.id.renderButton(
|
||||||
document.querySelector('.Container #g_id_signin'),
|
document.querySelector('.Container #g_id_signin'),
|
||||||
{
|
{
|
||||||
type:"standard",//icon为只有一个icon
|
type:"standard",//icon为只有一个icon
|
||||||
shape:"circle",
|
shape:"circle",
|
||||||
theme:"outline",
|
theme:"outline",
|
||||||
size:"large",
|
size:"large",
|
||||||
logo_alignment:"center",
|
logo_alignment:"center",
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const toGmailLogin = ()=>{
|
const toGmailLogin = ()=>{
|
||||||
@@ -132,7 +147,6 @@
|
|||||||
// width: 100%;
|
// width: 100%;
|
||||||
// height: 100%;
|
// height: 100%;
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// }
|
// }
|
||||||
.icon{
|
.icon{
|
||||||
// width: 40px;
|
// width: 40px;
|
||||||
@@ -176,15 +190,20 @@
|
|||||||
position: absolute;
|
position: absolute;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
overflow: hidden;
|
// overflow: hidden;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
opacity: 0;
|
// opacity: 0;
|
||||||
.S9gUrf-YoZ4jf{
|
.S9gUrf-YoZ4jf{
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
:deep(.S9gUrf-YoZ4jf){
|
:deep(.S9gUrf-YoZ4jf){
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
iframe{
|
||||||
|
zoom: 3;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
&:hover{
|
&:hover{
|
||||||
|
|||||||
@@ -408,6 +408,7 @@ export default defineComponent({
|
|||||||
if(res.errCode == 0){
|
if(res.errCode == 0){
|
||||||
file.imgUrl = res.data.url;
|
file.imgUrl = res.data.url;
|
||||||
file.id = res.data.id
|
file.id = res.data.id
|
||||||
|
data.currentList.forEach((listItem:any)=>listItem.isChecked = false)
|
||||||
data.fileList.forEach((listItem:any)=>{
|
data.fileList.forEach((listItem:any)=>{
|
||||||
if(listItem.id == file.id){
|
if(listItem.id == file.id){
|
||||||
listItem.isChecked = true
|
listItem.isChecked = true
|
||||||
@@ -415,7 +416,6 @@ export default defineComponent({
|
|||||||
listItem.isChecked = false
|
listItem.isChecked = false
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
data.currentList.forEach((listItem:any)=>listItem.isChecked = false)
|
|
||||||
file.type = 'ProductElement'
|
file.type = 'ProductElement'
|
||||||
// if(props.productimgMenu.value == 'Relight'){
|
// if(props.productimgMenu.value == 'Relight'){
|
||||||
// file.type = "ToProductImage"
|
// file.type = "ToProductImage"
|
||||||
@@ -553,6 +553,13 @@ export default defineComponent({
|
|||||||
watch(()=>store.state.HomeStoreModule.uploadElement.length,(newVal,oldVal)=>{
|
watch(()=>store.state.HomeStoreModule.uploadElement.length,(newVal,oldVal)=>{
|
||||||
if(props.isDesignPage)return
|
if(props.isDesignPage)return
|
||||||
data.fileList = store.state.HomeStoreModule.uploadElement
|
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)=>{
|
watch(()=>data.noLikeList.length,(newVal,oldVal)=>{
|
||||||
nextTick(()=>{
|
nextTick(()=>{
|
||||||
|
|||||||
Reference in New Issue
Block a user