Logo
RavenSaaS Docs

用户控制台

用户中心

用户登录后,点击头像下拉,可以进入用户中心。查看自己的订单,编辑个人信息等。

你可以根据自己的需求,在用户控制台添加更多的功能。

用户中心
用户中心

控制台布局

RavenSaaS 内置了一个控制台布局,位于 components/console/layout.tsx 文件。

实现一个用户中心布局,只需要引入控制台布局组件,传递一个 sidebar 即可。

布局实现示例

src/app/[locale]/users/layout.tsx
1import { ReactNode } from "react";
2import { Sidebar } from "@/types/siderbar";
3import ConsoleLayout from "@/components/console/layout";
4import { getTranslations } from "next-intl/server";
5import { serverGetUserInfo } from "@/services/user";
6import { redirect } from "next/navigation";
7
8export default async function UserLayout({ children }: { children: ReactNode }) {
9  const userInfo = await serverGetUserInfo();
10  if (!userInfo || !userInfo.email) {
11    redirect("/auth/signin");
12  }
13  const t = await getTranslations();
14
15  const sidebar: Sidebar = {
16    nav: {
17      items: [
18      {
19        title: t("user.my_orders"),
20        url: "/users/my-orders",
21        icon: "RiOrderPlayLine",
22      },
23      {
24        title: t("user.my_invites"),
25        url: "/users/my-invites",
26        icon: "RiTeamLine",
27      },
28      {
29        title: t("user.my_profile"),
30        url: "/users/profile",
31        icon: "RiUserLine",
32      },
33    ],
34    },
35  };
36
37  return <ConsoleLayout sidebar={sidebar}>{children}</ConsoleLayout>;
38}