React怎样在react-router路由实现登陆验证控制

这次给大家带来React怎样在react-router路由实现登陆验证控制,React在react-router路由实现登陆验证控制的注意事项有哪些,下面就是实战案例,一起来看一下。

验证代码

import React from 'react'import {connect} from 'react-redux';function requireAuthentication(Component) { // 组件有已登陆的模块 直接返回 (防止从新渲染) if (Component.AuthenticatedComponent) {  return Component.AuthenticatedComponent } // 创建验证组件 class AuthenticatedComponent extends React.Component {  static contextTypes = {   router: React.PropTypes.object.isRequired,  }  state = {   login: true,  }  componentWillMount() {   this.checkAuth();  }  componentWillReceiveProps(nextProps) {   this.checkAuth();  }  checkAuth() {   // 判断登陆   const token = this.props.token;   const login = token ? token.login : null;   // 未登陆重定向到登陆页面   if (!login) {    let redirect = this.props.location.pathname + this.props.location.search;    this.context.router.push('/login?message=401&redirect_uri=' + encodeURIComponent(redirect));    return;   }   this.setState({login});  }  render() {   if (this.state.login) {    return    }   return ''  } } // 不使用 react-redux 的话直接返回 // Component.AuthenticatedComponent = AuthenticatedComponent // return Component.AuthenticatedComponent function mapStateToProps(state) {  return {   token: state.token,  }; } function mapDispatchToProps(dispatch) {  return {}; } Component.AuthenticatedComponent = connect(mapStateToProps, mapDispatchToProps)(AuthenticatedComponent); return Component.AuthenticatedComponent}

登录后复制

路由上使用

 

登录后复制

相信看了本文案例你已经掌握了方法,更多精彩请关注【创想鸟】其它相关文章!

推荐阅读:

React路由跳转方法汇总

React路由管理与React Router使用详解

以上就是React怎样在react-router路由实现登陆验证控制的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2753634.html

(0)
上一篇 2025年3月8日 06:43:35
下一篇 2025年3月8日 06:44:41

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • react中fetch之cors跨域请求的实现方法

    本篇文章主要介绍了react中fetch之cors跨域请求的实现方法,现在分享给大家,也给大家做个参考。 项目中使用了react,当中需要使用fetch来代替ajax。 由于react的create_react_app工具很方便,基本上开箱…

    编程技术 2025年3月8日
    200
  • react以create-react-app为基础创建项目

    这篇文章主要介绍了react以create-react-app为基础创建项目,现在分享给大家,也给大家做个参考。 什么是create-react-app create-react-app是一个js库,使用它能够很方便地建立react项目,免…

    编程技术 2025年3月8日
    200
  • JavaScript实现区块链

    很多朋友都听说过比特币和以太币这样的加密货币,但是只有极少数人懂得隐藏在它们背后的技术,接下来通过本文给大家介绍用javascript来创建一个简单的区块链来演示它们的内部究竟是如何工作的,感兴趣的朋友一起看看吧 几乎每个人都听说过像比特币…

    编程技术 2025年3月8日
    200
  • Angular4.x通过路由守卫实现动态跳转界面步骤详解

    这次给大家带来Angular4.x通过路由守卫实现动态跳转界面步骤详解,Angular4.x通过路由守卫实现动态跳转界面的注意事项有哪些,下面就是实战案例,一起来看一下。 需求: 最近在做一个网上商城的项目,技术用的是Angular4.x。…

    编程技术 2025年3月8日
    200
  • vue路由懒加载的实现方法

    本篇文章主要介绍了vue路由懒加载的实现方法,现在分享给大家,也给大家做个参考。 本文介绍了vue的路由懒加载,分享给大家,具体如下: 我们可以把不同路由对应的组件分割成不同的代码块,然后当路由被访问的时候才加载对应组件。 componen…

    编程技术 2025年3月8日
    200
  • 怎样使用React 服务器端渲染

    这次给大家带来怎样使用React 服务器端渲染,使用React 服务器端渲染的注意事项有哪些,下面就是实战案例,一起来看一下。 React 提供了两个方法 renderToString 和 renderToStaticMarkup 用来将组…

    编程技术 2025年3月8日
    200
  • 怎样使用vue2.0实现移动端的输入框实时检索更新

    这次给大家带来怎样使用vue2.0实现移动端的输入框实时检索更新,使用vue2.0实现移动端的输入框实时检索更新的注意事项有哪些,下面就是实战案例,一起来看一下。 最近在做vue2.0的项目遇到一个移动端实时检索搜索更新列表的效果,当用户在…

    2025年3月8日 编程技术
    200
  • React-Router中Url参数如何处理页面不刷新

    这次给大家带来React-Router中Url参数如何处理页面不刷新,React-Router中Url参数处理页面不刷新的注意事项有哪些,下面就是实战案例,一起来看一下。 问题 今天在写页面的时候发现一个问题,就是在React Router…

    编程技术 2025年3月8日
    200
  • 如何使用Vue + better-scroll实现移动端字母索引导航

    这次给大家带来如何使用Vue + better-scroll实现移动端字母索引导航,使用Vue + better-scroll实现移动端字母索引导航的注意事项有哪些,下面就是实战案例,一起来看一下。 Demo:list-view,使用 ch…

    2025年3月8日
    200
  • 怎样使用Vue实现树形视图数据

    这次给大家带来怎样使用Vue实现树形视图数据,使用Vue实现树形视图数据的注意事项有哪些,下面就是实战案例,一起来看一下。 利用简单的树形视图实现,熟悉了组件的递归使用 这是模拟的树形图数据 let all={ name:’all’, ch…

    2025年3月8日 编程技术
    200

发表回复

登录后才能评论