reactjs 为什么没有定义“google”关键字?

busg9geu  于 2022-11-22  发布在  React
关注(0)|答案(1)|浏览(118)

我在我的应用程序中使用Google OAuth进行身份验证,我在index.html中使用以下脚本:

<script src="https://accounts.google.com/gsi/client" async defer></script>

它是API的gsi客户端。
这是我的App.js

import './App.css';
import { useState, useEffect } from 'react';
import { googleLogout, GoogleOAuthProvider } from '@react-oauth/google';
import LoginBtn from './components/atoms/LoginBtn';
import jwtDecode from 'jwt-decode';

function App() {
  const [ user, setUser ] = useState({}) //Store my user data

  function handleCallbackResponse(response){
    console.log(response)
    var userData = jwtDecode(response.credential);
    console.log(userData);
  }

  useEffect(()=>{
    google.accounts.id.initialize({
      client_id: '**************************.apps.googleusercontent.com',
      callback: handleCallbackResponse
    })
  }, []);

  return (

    <GoogleOAuthProvider clientId="*************************.apps.googleusercontent.com">
      <div className="App">
        <LoginBtn />
      </div>
    </GoogleOAuthProvider>
  );
}

export default App;

我试图做一个回调函数来存储不同的数据,但我不能访问全球谷歌功能,因为我得到:

'google' is undefined
kupeojn6

kupeojn61#

在任何全局函数(如
window.google.accounts......

相关问题