跳到内容
+

useSession

Toolpad Core 公开了一个 API 以访问当前的身份验证会话,无论底层使用何种身份验证提供程序。

用法

当在 Toolpad Core 内部使用身份验证功能时,将创建一个 SessionContext 以在所有 Toolpad Core 组件之间共享会话信息。这接受来自 AppProvidersession prop 的默认值。

<AppProvider session={session}>{props.children}</AppProvider>

可以使用您选择的任何身份验证提供程序创建 session。您可以通过调用 Hook 在 Toolpad Core 组件内部访问 SessionContext 的当前值

import { useSession } from '@toolpad/core/useSession';
const session = useSession();

如果您的会话有其他数据想要在帐户弹出窗口中显示,您可以创建自定义组件,用于使用会话对象显示用户信息

import { Session } from '@toolpad/core/AppProvider';

interface CustomSession extends Session  {
  org: {
    name: string;
    url: string;
    logo: string;
  };
}

function CustomAccountDetails() {

  const session = useSession<CustomSession>();
  return (
    // Use `session.org`
  )
}

以下示例演示了此行为

Enter 开始编辑