如何重定向到/user/dashboard

2023-12-05

我必须重定向到/user/dashboard登录后的页面,但每次我关闭选项卡并再次打开它时,它都会打开默认主页,即/.

import React from 'react';
import {isAuthenticated} from '../helpers/auth' 
import {Route, Redirect } from 'react-router-dom';
const UserRoute = ({component: Component, ...rest}) => {
    return(
        <Route 
            {...rest}
            render={(props)=>
                isAuthenticated() && isAuthenticated().role === 0 ? (
                    <Component {...props} />
                ):(
                    <Redirect to="/signin" />
                )
            }
        />
    );
}

导出默认用户路由;


这是路由设置的一般示例,它检查“公共”、“私有”和索引路径:

export default function Routes() {

  function fromIndex() {
    if (isAuthenticated) { // use your authentication mechanism
        return '/user/dashboard'
    }
    return '/login'
  }

  return (
    <Router history={history}> {/* history not required when using BrowserRouter */}
      <Switch>
        <Redirect exact from="/" to={fromIndex()} />

        {/* publicPaths is an array of paths: [{...} */}
        {publicPaths.map(item => (
          <PublicRoute exact={item.exact} key={item.path} path={item.path}>
            <item.component />
          </PublicRoute>
        ))}

        {privatePaths.map(item => (
          <PrivateRoute exact={item.exact} key={item.path} path={item.path}>
            <item.component />
          </PrivateRoute>
        ))}

        <NotFoundPage />
      </Switch>
    </Router>
  )
}

Here, PrivateRoute是一个渲染的组件children如果通过身份验证,否则重定向回“/login”。

And PublicRoute是一个渲染的组件children如果未通过身份验证,则重定向回“/”。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何重定向到/user/dashboard 的相关文章

随机推荐

  • 如何在 Perl 或批处理中合并两个 Excel (xls) 文件?

    我有两个文件可以说a xls and b xls 第一个包含 2 张 第二个包含 3 张 有人可以告诉我是否可以使用 Perl 或批处理脚本合并它们吗 我想要一份包含 5 张纸的输出XLS file 对于 Perl 解决方案使用电子表格 P
  • CSS:突出显示文本效果

    我试图用一些填充来产生突出显示的文本效果 但填充仅应用于开头和结尾 而不应用于新行 highlight background rgba 255 230 0 0 5 padding 3px 5px margin 3px 5px line he
  • ProGuard 仍然显示完整的活动名称

    我正在使用 Proguard 并在我的应用程序中使用此代码 System out println ACTIVITY NAME IS activity getLocalClassName 它在发布模式下打印出活动名称 我认为它应该混淆所有类名
  • torch.optim 对于多维张量返回“ValueError:无法优化非叶张量”

    我正在尝试优化场景顶点的平移torch optim adam 这是来自redner教程系列 在初始设置下效果很好 它尝试通过将所有顶点移动相同的值来优化场景 称为translation 这是原始代码 vertices for obj in
  • 启用 GtkFileChooserDialog 选择文件或文件夹

    使用 GTK Gtk文件选择对话框 我如何允许用户选择文件或文件夹 两者在这里都有效 这可用的行动是互斥的 不幸的是我认为这是不可能的 我在 Transmission 的 创建 torrent 对话框中尝试了一下 最后使用radibox 启
  • FastAPI 中的依赖注入数据模型

    我对 FastAPI 很陌生 我有一个请求 看起来像这样 router post response model EducationInResp async def create Education account education in
  • 哪个库包含 _is_c_termination_complete

    我在将 C 代码与标准库 C 库链接时收到 LNK2019 错误 我需要知道哪些库包含以下功能 is c termination complete acrt initialize acrt uninitialize acrt uniniti
  • 有效查询包含子字符串的列

    给定一个字符串列 其值类似于 123 12 34 56 5 查询所有的最佳方式是什么包含给定编号的记录 12例如 我脑海中的解决方案是 SELECT id FROM things WHERE things path LIKE 12 但据我所
  • ASP.Net5 Startup.cs ConfigurationBuilder [重复]

    这个问题在这里已经有答案了 使用带有 MVC beta 8 的 VS 2015 我收到以下错误 Severity Code Description Project File Line Error CS1503 Argument 1 cann
  • JavaScript 判断动态命名函数是否存在

    我如何检查是否动态地命名对象或函数存在吗 在示例中 var str test var obj str Page str function Page test if typeof obj str function alert ok else
  • 可以为本机 iOS 应用程序指定的捆绑 ID 数量是否有限制?

    我一直尝试为我的本机 iOS 应用程序添加新的捆绑包 ID 尽管系统说它已保存 但当我 30 分钟后返回时 我添加的 ID 已不存在 目前我的应用程序中有 6 个捆绑包 谢谢各位 None
  • 我的对象的 ArrayList,indexOf 问题

    我对 Java 的 ArrayList 有问题 我创建了一个对象 它包含两个属性 x 和 y 现在我已经在 ArrayList 中加载了一些对象 问题是我不知道如何找到我正在搜索的具有 x 属性的某个对象的索引 有什么办法可以做到这一点吗
  • 优化查询

    我有以下功能 CREATE FUNCTION dbo SuiviRupture CodeArticle NVARCHAR 13 CodeSite NVARCHAR 5 CodeStructure NVARCHAR 13 RETURNS ca
  • 比较模型的同一性,但与变量?用减号构造?

    我的团队正在实施一个变体Ceusters 的参照物追踪 在我们的实现中 实体的原始 URI 可以更改 更改为包含 UUID 的内容 但始终保留原始 URI 的链接 例如 Joey rdf type person New York City
  • 反编译的程序集 - 异常代码

    我使用 ILSpy 反编译了一个程序集 其中一个类特别引起了我的注意 public class CustomTextStream NetworkStream private EventHandler
  • 获取 WinRT 中的当前用户

    我是一名 C 开发人员 我已经习惯了旧的Environment CurrentUser 现在我需要在我的 Windows 8 Metro 应用程序 html 和 js 中精确地做到这一点 那么我怎样才能得到它呢 Windows System
  • Lua中使用“#”运算符计算表的长度? [复制]

    这个问题在这里已经有答案了 我使用时有一个问题 计算表的长度 例如 local t a b local t1 a nil print t 2 print t1 1 local t a b local t1 nil a print t 2 p
  • ajax post后使用模型渲染页面

    是否可以发出 ajax post 请求 并在控制器中返回一个模型 然后使用该模型渲染页面 为了说明我的意思 假设我们有一个简单的 ajax 帖子 ajax url Home PostReq data JSON stringify data
  • 命令 `sed -i "s/^ \+//g; s/ \+/\t/g"` 是什么意思?

    我是新来的sed 有人可以帮我解释以下 sed 命令吗 sed i s g s t g 我找到了解释 i谷歌上有选项 但没有对上述模式含义的确切解释 抱歉 由于我们的内部服务器最近正在维护 因此我无法在此处显示示例文件 这意味着我无法访问此
  • 如何重定向到/user/dashboard

    我必须重定向到 user dashboard登录后的页面 但每次我关闭选项卡并再次打开它时 它都会打开默认主页 即 import React from react import isAuthenticated from helpers au