【问题标题】:Next.js - Cannot read properties of undefined (reading 'user')Next.js - 无法读取未定义的属性(读取“用户”)
【发布时间】:2023-02-17 00:22:45
【问题描述】:

我在我的项目中使用 Next.js 和 Next-auth。

我正在构建一个边栏组件,我想在其中显示用户的项目列表。

所以我正在使用 useSession 获取会话。

当我像这样记录会话时......

export default function Sidebar() {
  const { data: session, status } = useSession();

  console.log(session);

  return (
    ...
  )
}

...我得到一个对象,包括用户对象。

但是当我尝试像这样记录用户时......

export default function Sidebar() {
  const { data: session, status } = useSession();

  console.log(session.user);

  return (
    ...
  )
}

我收到此错误:

类型错误:无法读取未定义的属性(读取“用户”)

知道这里有什么问题吗?

多谢, 加布里埃尔

【问题讨论】:

    标签: javascript reactjs next.js next-auth


    【解决方案1】:

    由于 useSession 是一个钩子,它将使数据异步可用。因此,您需要在记录/使用会话之前检查会话是否未定义。

    console.log(session?.user);
    

    或者

    if(session) {
      console.log(session.user);
    }
    

    【讨论】:

      猜你喜欢
      • 2023-01-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-04
      • 2021-11-21
      • 1970-01-01
      相关资源
      最近更新 更多