blob: b390011abb228a27393c8d45d11d2b7ddb88c647 [file] [log] [blame]
ybt02e716d2025-04-15 17:19:32 +08001import React from 'react';
2import { Navigate } from 'react-router-dom';
3
4const PermissionRoute = ({ requiredRoles, children }) => {
5 // 从localStorage获取用户信息
6 const user = JSON.parse(localStorage.getItem('user') || '{}');
7 const userRole = user.role || 'guest';
8
9 // 检查用户是否有所需角色
10 if (requiredRoles.includes(userRole)) {
11 return children;
12 }
13
14 // 如果没有权限,重定向到未授权页面
15 return <Navigate to="/unauthorized" replace />;
16};
17
18export default PermissionRoute;