我的 index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="google-signin-client_id" content= "my_client_id.apps.googleusercontent.com">
<meta name="google-signin-scope" content="profile email">
<script src="https://apis.google.com/js/client:platform.js?onload=start" async defer></script>
<script>
function start() {
console.log('script running')
gapi.load('auth2', function() {
auth2 = gapi.auth2.init({
client_id: 'my_client_id.apps.googleusercontent.com',
scope: 'profile email'
});
});
}
</script>
<title>React App</title>
</head>
<body>
<div id="root"></div>
</body>
</html>
在start()
我打印到控制台以查看它何时运行的函数中。
当我加载页面时,每隔一段时间start()
就会在react组件之后加载。
登录.js
componentDidMount() {
console.log(gapi.auth2.getAuthInstance())
}
在调试器中,您可以看到脚本在组件之后加载:
如果我刷新页面几次,它工作正常。但有时它有效,有时它不起作用。
为什么?