react-router4 嵌套路由的使用方法
react我自己还在摸索学习中,今天正好学习一下react-router4 嵌套路由的使用方法,顺便留着笔记
先直接贴代码
import React from 'react'; import ReactDOM from 'react-dom'; import { HashRouter as Router, Route, Switch} from 'react-router-dom'; import createBrowserHistory from 'history/createBrowserHistory'; import UserAddPage from './pages/UserAdd/index'; import HomePage from './pages/Home/index'; import HomeLayout from './components/HomeLayout/index'; const hashHistory = createBrowserHistory(); const NoMatch = ({ location }) => ( <div> <h3>无法匹配 <code>{location.pathname}</code></h3> </div> ) ReactDOM.render(( <Router history={hashHistory}> <div> <HomeLayout>//总会加载这个组件,并且下面 swicth 里面的组件会在它里面 render <Switch> <Route path="/" exact component={HomePage}/> <Route path="/user/add" component={UserAddPage}/> <Route component={NoMatch}/> </Switch> </HomeLayout> </div> </Router> ), document.getElementById('root'));
参考文章:https://stackoverflow.com/questions/42095600/nested-routes-in-v4
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
React-router v4 路由配置方法小结
本文主要介绍了React-router v4 路由配置方法小结,分享给大家,也给自己留个笔记 一. Switch .Router .Route三者的区别 1.Route Route 是建立location 和 ui的最直接联系 2.Router react-router v4 中,Router被拆分成了StaticRouter.MemoryRouter.BrowserRouter.HashRouter.NativeRouter. MemoryRouter.BrowserRouter.HashRo
-
详解前端路由实现与react-router使用姿势
路由 对于有过SPA开发经验的人来说,路由这个名词并不陌生,前端的路由和后端的路由在实现技术上不一样,但是原理都是一样的.在 HTML5 的 history API 出现之前,前端的路由都是通过 hash 来实现的,hash 能兼容低版本的浏览器.它的 URI 规则中需要带上 #.Web 服务并不会解析 hash,也就是说 # 后的内容 Web 服务都会自动忽略,但是 JavaScript 是可以通过 window.location.hash 读取到的,读取到路径加以解析之后就可以响应不同路径的
-
react-router JS 控制路由跳转实例
Link组件用于正常的用户点击跳转,但是有时还需要表单跳转.点击按钮跳转等操作.这些情况怎么跟React Router对接呢? 下面是一个表单. <form onSubmit={this.handleSubmit}> <input type="text" placeholder="userName"/> <input type="text" placeholder="repo"/> <
-
react-router4 嵌套路由的使用方法
react我自己还在摸索学习中,今天正好学习一下react-router4 嵌套路由的使用方法,顺便留着笔记 先直接贴代码 import React from 'react'; import ReactDOM from 'react-dom'; import { HashRouter as Router, Route, Switch} from 'react-router-dom'; import createBrowserHistory from 'history/createBrowserH
-
vue-router:嵌套路由的使用方法
模板抽离 我们已经学习过了Vue模板的另外定义形式,使用<template></template>. <!-- 模板抽离出来 --> <template id="home"> <div>首页</div> </template> <template id="news"> <div>新闻</div> </template> 然后js里定义路
-
react router4+redux实现路由权限控制的方法
总体概述 一个完善的路由系统应该是这样子的,当链接到的组件是需要登录后才能查看,要能够跳转到登录页,然后登录成功后又跳回来之前想访问的页面.这里主要是用一个权限控制类来定义路由路由信息,同时用redux把登录成功后要访问的路由地址给保存起来,登录成功时看redux里面有没有存地址,如果没有存地址就跳转到默认路由地址. 路由权限控制类 在这个方法里面,通过sessionStorage判断是否登录了,如果没有登录,就保存一下当前想要跳转的路由到redux里面.然后跳转到我们登录页. import R
-
React从react-router路由上做登陆验证控制的方法
本文介绍了React从react-router路由上做登陆验证控制的方法,分享给大家,具体如下: 验证代码 import React from 'react' import {connect} from 'react-redux'; function requireAuthentication(Component) { // 组件有已登陆的模块 直接返回 (防止从新渲染) if (Component.AuthenticatedComponent) { return Component.Authe
-
React路由参数传递与嵌套路由的实现详细讲解
目录 1. 页面路由参数传递 1.1 动态路由参数 1.2 search字符串 1.3 页面参数隐式传递 2. 嵌套路由 1. 页面路由参数传递 1.1 动态路由参数 描述: 以“/detail/:id”形式传递的数据,在落地组件中通过this.props.match.params得到. 使用: App.jsx: import React, { Component } from 'react' import { Route, Link, NavLink, Switch, Redirect } f
-
React中的路由嵌套和手动实现路由跳转的方式详解
目录 React的路由嵌套 手动路由的跳转 React的路由嵌套 接上一篇文章, 在上一篇文章中讲解了路由的基本介绍, 我再来介绍一下路由的其他用法 在开发中,路由之间是存在嵌套关系的. 这里我们假设Home页面中还有两个页面内容: 推荐列表和排行榜列表; 点击不同的链接可以跳转到不同的地方,显示不同的内容; <Routes> <Route path='/' element={<Navigate to="/home"/>}></Route>
-
vue router嵌套路由在history模式下刷新无法渲染页面问题的解决方法
解决vue-router嵌套路由(子路由)在history模式下刷新无法渲染页面的问题,具体内容如下 一. 异常描述 本来使用的是vue-router的hash模式,但是hash模式下url需要带"#"符号,不仅看起来不舒服,而且有些场景下是会破坏路由中的"#"(微信分享页面就会把"#"后边的内容处理掉),所以就需要使用history模式,然后就让后端改下nginx配置: location / { try_files $uri $uri/ /in
-
vue嵌套路由与404重定向实现方法分析
本文实例讲述了vue嵌套路由与404重定向实现方法.分享给大家供大家参考,具体如下: 第一部分: vue嵌套路由 嵌套路由是什么? 嵌套路由就是在一个被路由过来的页面下可以继续使用路由,嵌套也就是路由中的路由的意思. 比如在vue中,我们如果不使用嵌套路由,那么只有一个<router-view>,但是如果使用,那么在一个组件中就还有<router-view>,这也就构成了嵌套. 为什么要使用嵌套路由? 就比如在一个页面中, 在页面的上半部分,有三个按钮,而下半部分是根据点击不同的
-
vue 刷新之后 嵌套路由不变 重新渲染页面的方法
解决嵌套路由刷新时,路由没有变化,正常情况下页面是不会重新渲染的 1.在router-view中加上条件渲染 v-if 默认为true.让它显示出来 2.写写一个reload方法,在页面刷新只有,点击某个查询条件的时候调用这个重载的方法 这是条件渲染变化了为false 在修改数据之后使用 $nextTick, 条件渲染变化了为true 则可以在回调中获取更新后的 DOM 如果需要带有查询参数,可以用编程试导航,query来传参,但是这种方式可能刷新之后会有问题. 我的解决方法是在刷新之后点击页面
-
vue2路由方式--嵌套路由实现方法分析
本文实例讲述了vue2嵌套路由实现方法.分享给大家供大家参考,具体如下: 前面讲过了vue2路由基本用法,一般应用中的路由方式不会像上述例子那么简单,往往会出现二级导航这种情况.这时就需要使用嵌套路由这种写法. <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ page contentType="text/html;charset=UTF-8"
随机推荐
- Node.js中环境变量process.env的一些事详解
- 体验jQuery和AngularJS的不同点及AngularJS的迷人之处
- Java 随机取字符串的工具类
- python实现RSA加密(解密)算法
- setTimeout学习小结
- asp.net后台如何动态添加JS文件和css文件的引用
- Android编程开发实现带进度条和百分比的多线程下载
- js 模拟实现类似c#下的hashtable的简单功能代码
- 如何将javaweb项目部署到linux下
- 用示例说明filter()与find()的用法以及children()与find()的区别分析
- JS中对象与字符串的互相转换详解
- 怎么才能让用户站直接.shtml文件
- ADO.NET通用数据库访问类
- use jscript List Installed Software
- C#数字图像处理之图像二值化(彩色变黑白)的方法
- 登录验证全局控制的几种方式总结(session)
- Mysql 出现故障应用直接中断连接导致数据被锁(生产故障)详解
- 华为路由器单臂路由实例
- 详解Ubuntu Docker Registry 搭建私有仓库
- p5.js入门教程之鼠标交互的示例