reactjs - 我只希望管理员路由和用户限制
问题描述
我只希望管理员路由到 admindashboard,并且应该限制用户访问 url:localhost:3000/admindashboard。但是当用户还键入相同的 url 时,用户会移动到 url。我试过这样,但没有用。我是新手,请帮忙。代码如下:
if (isValid) {
const isAuth = await loginRoute(login);
const role = isAuth[1];
if (isAuth[0]) {
if (role === "user") {
history.push("/myvehicles");
}
if (role === "admin") {
history.push("/admindashboard");
}
}
}
解决方案
您必须在路由组件内验证用户角色或创建一些通用验证机制。
export function Admindashboard(props) {
if (props.role === "user") {
history.push("/myvehicles");
} else {
render();
}
}
推荐阅读
- javascript - 使用 axios 阅读公开共享的谷歌文档内容
- api - 通过 ServiceNow 中的 API 获取分配给特定用户的计算机
- html - 无法使用铬/铬拖动 URL
- linux - postgresql +如何打印所有主机
- python - Python - 使用 Pandas 遍历 excel 文件的行
- opencv - 使用摄影参考比例进行图像校正
- python - 尝试将对象列转换为 int 时出错
- javascript - 使用 Typescript 和类发送 mailgun 消息
- datetime - 如何在谷歌应用程序脚本中将时间戳“新日期()”格式化为新加坡时区?
- python - 尝试从列表中获取列表的长度以及基于每个列表的长度的计数