2.5 권한 기반 UI 노출 제어(빠른 액션/관리자 메뉴)
This commit is contained in:
16
src/app/components/QuickActions.tsx
Normal file
16
src/app/components/QuickActions.tsx
Normal file
@@ -0,0 +1,16 @@
|
||||
"use client";
|
||||
import { usePermission } from "@/lib/usePermission";
|
||||
|
||||
export function QuickActions() {
|
||||
const { can } = usePermission();
|
||||
const canWrite = can("POST", "CREATE");
|
||||
const isAdmin = can("ADMIN", "ADMINISTER") || can("BOARD", "MODERATE");
|
||||
return (
|
||||
<div style={{ display: "flex", gap: 8 }}>
|
||||
{canWrite && <button>글쓰기</button>}
|
||||
{isAdmin && <button>관리자</button>}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
import Image from "next/image";
|
||||
import { QuickActions } from "@/app/components/QuickActions";
|
||||
|
||||
export default function Home() {
|
||||
return (
|
||||
<div className="" >
|
||||
<div className="">
|
||||
<QuickActions />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user