您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

AdminRoute.js 701B

1234567891011121314151617181920
  1. import React, { useMemo } from "react";
  2. import { Redirect, Route } from "react-router";
  3. import { useSelector } from "react-redux";
  4. import { HOME_PAGE } from "../../constants/pages";
  5. // import { selectRoles } from "../../store/selectors/loginSelectors";
  6. import { selectMineProfile } from "../../store/selectors/profileSelectors";
  7. const AdminRoute = ({ ...props }) => {
  8. // const role = useSelector(selectRoles);
  9. const profile = useSelector(selectMineProfile);
  10. const isUserAdmin = useMemo(() => {
  11. if (!profile?.roles?.includes("Admin")) return false;
  12. return true;
  13. }, [profile]);
  14. return isUserAdmin ? <Route {...props} /> : <Redirect to={HOME_PAGE} />;
  15. };
  16. export default AdminRoute;