我在使用 React 实现Google Identity Service登录按钮时遇到了奇怪的行为。当我第一次访问登录页面时,不会出现 Google 登录按钮,但会出现点击窗口。如果我刷新页面,那么两者都会出现。之后,如果我导航到其他页面并返回登录页面按钮再次消失,但会出现一键窗口。
我使用以下代码作为登录按钮
renderGoogleSignInButton = () => {
return (
<>
<div
id="g_id_onload"
data-client_id="MY_CLIENT_ID"
data-auto_prompt="false"
data-auto_select="true"
data-callback="handleCredentialResponse"
></div>
<div
className="g_id_signin mt-4 flex justify-center"
data-type="standard"
data-size="large"
data-theme="outline"
data-text="sign_in_with"
data-shape="rectangular"
data-logo_alignment="left"
></div>
</>
)
Run Code Online (Sandbox Code Playgroud)
}
以及一键窗口的以下代码
componentDidMount() {
google.accounts.id.initialize({
client_id: MY_CLIENT_ID,
callback: this.handleCredentialResponse,
})
google.accounts.id.prompt()
Run Code Online (Sandbox Code Playgroud)
}
我没有使用谷歌搜索找到任何线索,甚至在文档中也没有找到。在此先感谢您的帮助。