blob: 246555a125b482be8aecfe7c097667257654c6ba [file] [log] [blame]
223010091e2aea72025-06-08 16:35:54 +08001import {useContext} from "react";
2import { UserContext } from "../context/UserContext";
3import toast from "react-hot-toast";
4const AuthButton = ({children, roles,onClick, ...rest }) => {
5 const {user} = useContext(UserContext);
6 const {levelRole} = user;
22301009207e2db2025-06-09 00:27:28 +08007
223010091e2aea72025-06-08 16:35:54 +08008 let clickFunc = onClick
9 if(!roles || roles.length === 0 || roles.includes(levelRole)){
10 clickFunc = onClick;
11 }else{
22301009207e2db2025-06-09 00:27:28 +080012 clickFunc = (e) => {
13 e.preventDefault();
223010091e2aea72025-06-08 16:35:54 +080014 toast.error("权限不足");
15 }
16 }
17
18 return (
19 <button onClick={clickFunc} {...rest}>
20 {children}
21 </button>
22 )
23}
24export default AuthButton;