用户控制台
用户中心
用户登录后,点击头像下拉,可以进入用户中心。查看自己的订单,编辑个人信息等。
你可以根据自己的需求,在用户控制台添加更多的功能。

控制台布局
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}