Google 一键登录弹出窗口未显示
Google One Tap SignIn Popup not showing
我试图在我的项目中实施 Google One Tap SignIn
。第一次构建项目后,将显示 google 一键提示。但是下次如果我们刷新页面也不会显示提示。
这是我的代码片段。
import { addScript } from 'Util/DOM';
/**
* Loads One Tap Client Library
*/
const loadOneTapClientLibrary = async() => {
await addScript('https://accounts.google.com/gsi/client');
}
/**
* Loads One Tap Javascript API
* @param {*} resolve
*/
const loadOneTapJsAPI = (resolve) => {
window.onload = () => {
google.accounts.id.initialize({
client_id: "My client Id",
callback: data => resolve(data)
});
google.accounts.id.prompt();
}
}
export const loadOneTap = async() => {
return new Promise( (resolve, reject) => {
loadOneTapClientLibrary();
loadOneTapJsAPI(resolve);
})
}
页面加载后我正在调用 loadOneTap();
为避免一键UI过于频繁地提示最终用户,如果用户通过'X'按钮关闭UI,一键将被禁用一段时间。这就是 so-called“指数降温”功能。更多详细信息,请访问:https://developers.google.com/identity/one-tap/web/guides/features#exponential_cool_down
我相信你在开发过程中触发了这个功能。为避免这种情况,请使用 Chrome 隐身模式(必要时重新启动浏览器)。
我试图在我的项目中实施 Google One Tap SignIn
。第一次构建项目后,将显示 google 一键提示。但是下次如果我们刷新页面也不会显示提示。
这是我的代码片段。
import { addScript } from 'Util/DOM';
/**
* Loads One Tap Client Library
*/
const loadOneTapClientLibrary = async() => {
await addScript('https://accounts.google.com/gsi/client');
}
/**
* Loads One Tap Javascript API
* @param {*} resolve
*/
const loadOneTapJsAPI = (resolve) => {
window.onload = () => {
google.accounts.id.initialize({
client_id: "My client Id",
callback: data => resolve(data)
});
google.accounts.id.prompt();
}
}
export const loadOneTap = async() => {
return new Promise( (resolve, reject) => {
loadOneTapClientLibrary();
loadOneTapJsAPI(resolve);
})
}
页面加载后我正在调用 loadOneTap();
为避免一键UI过于频繁地提示最终用户,如果用户通过'X'按钮关闭UI,一键将被禁用一段时间。这就是 so-called“指数降温”功能。更多详细信息,请访问:https://developers.google.com/identity/one-tap/web/guides/features#exponential_cool_down
我相信你在开发过程中触发了这个功能。为避免这种情况,请使用 Chrome 隐身模式(必要时重新启动浏览器)。