Я пытаюсь добавить кнопку входа в Google в свое приложение Vue.js и обнаружил плагин vue-google-oauth2.Я установил его и следовал в точности коду sample.html
, чтобы интегрировать его в свое приложение, следующим образом:
<template>
<div>
<h1>Test</h1>
<button @click="handleClickSignIn" :disabled="!isLoaded">signIn</button>
</div>
</template>
<script>
/**
* You should first need to place these 2 lines of code in your APP ENTRY file, e.g. src/main.js
*
* import GAuth from 'vue-google-oauth2'
* Vue.use(GAuth, {clientId: '4584XXXXXXXX-2gqknkvdjfkdfkvb8uja2k65sldsms7qo9.apps.googleusercontent.com'})
*
*/
export default {
name: 'test',
props: [],
components: {
},
data () {
return {
isLoaded: false
}
},
computed: {
},
methods: {
handleClickSignIn(){
this.$gAuth.signIn(function (user) {
//on success do something
console.log('user', user)
}, function (error) {
//on fail do something
})
}
},
mounted(){
let that = this
let checkGauthLoad = setInterval(function(){
that.isLoaded = that.$gAuth.isLoaded()
console.log('checked', that.isLoaded)
if(that.isLoaded) clearInterval(checkGauthLoad)
}, 1000);
}
}
</script>
Проблема в том, что метод isLoaded()
никогда не возвращает true, а консоль Google Chrome сообщает мнекаждый раз, когда я нажимаю на кнопку, google api is not ready
, то есть сообщение консоли плагина, которое печатается, когда GoogleAuthInstance равен false
.Кто-нибудь может мне помочь?