前回は、Authentication でログイン機能を実装しました。

今回は、Authentication でプロフィールを取得します。

認証情報を取得するには、getAuthを使用します。

firebase/authからgetAuthをインポートしましょう。

import { getAuth } from "firebase/auth"

useAuth.js でuseUser関数を作成します。

getAuthで認証情報を取得しましょう。

export const useUser = () => {
  const auth = getAuth()
}

認証プロフィールを取得するために、authcurrentUserを指定します。

export const useUser = () => {
  const auth = getAuth()
  const user = auth.currentUser
}

userが存在する場合、emailaccessTokenを取得し、返します。

user存在しない場合、そのままuserを返しましょう。

export const useUser = () => {
  const auth = getAuth()
  const user = auth.currentUser

  if (user !== null) {
    const email = user.email
    const accessToken = user.accessToken

    const userInfo = {
      email,
      accessToken,
    }

    return { user: userInfo }
  } else {
    return { user }
  }
}

ホーム画面で、useUser をインポートします。

const { user } = useUser()

user を console.log で確認すると、

image2

accessToken と email を取得することができました。

次回は、Authentication でログアウトします。

ブログ一覧