我正在关注此文档谷歌一键登录以在我的反应应用程序中实现谷歌一键登录。
我已将以下代码添加到我的组件 JSX 中,并开始让谷歌提示登录:
const handleCredentialResponse = response => {
console.log('response', response);
};
return (
<Fragment>
<div
id="g_id_onload"
data-auto_select = 'false'
data-client_id={clientId}
data-callback={(e) => handleCredentialResponse(e)}>
</div>
</Fragment>
);
我面临的问题是回调函数没有触发。在寻找解决方案后,我偶然发现了这个SO question。OP 提出了类似的问题,并使用 javascript API 语法向谷歌显示一键而不是 HTML 代码要遵循上述问题,我阅读了此文档Use the One Tap JavaScript API。但我无法理解变量 google 来自哪里?
示例代码:
window.onload = function () {
google.accounts.id.initialize({
client_id: 'YOUR_GOOGLE_CLIENT_ID',
callback: handleCredentialResponse
});
google.accounts.id.prompt();
}
如果有人能告诉我这可能会解决我的回调函数未触发的问题。谢谢!