So I was using the guide and codes from https://developers.google.com/identity/sign-in/web/
When I clicked the button, it works fine, it will redirect me to google login page, and no problem occurs during authentication.
Once finished, it redirected me back to the page (vue component) where the button is located. In theory it should call onSignIn
method and print out info with console.log
, but it didn't happen.
Somehow Vue was not able to excute data-onsuccess="onSignIn"
. I tried to change data-onsuccess
to dynamic props (:data-onsuccess
) or event handling (@data-onsuccess
), both of these does not work either.
Does anyone countered this issue before? Or there's special way to implement it on Vue?
In case somebody needs a plugin to start working right away without too much setup, try this vue-google-signin-button-directive.
data-onsuccess="onSignIn"
is looking for a globalonSignIn
function. You need to putonSignIn
outside of Vue component.Another way is using
gapi.signin2.render
to render sign-in button, then you can useonSignIn
inside Vue component:For more reference: https://developers.google.com/identity/sign-in/web/build-button