react函数式组件(非路由组件)实现路由跳转

个人理解:

 <Route exact path="/Home" component={Home}/>
 1.路由组件:只有包裹在Route组件里的才能使用`this.props.location`,
 2.非路由组件:假如有个需求,是面包屑或者导航组件里需要拿到`this.props.location`(导航组件或者面包屑一般不会包裹在`Route`里吧),那么直接这么写显然就不行了。
 这个时候`withRouter`修饰一下,就可以这么写了。

useHistory

import { useHistory } from "react-router-dom";

function HomeButton() {
  let history = useHistory();

  function handleClick() {
    history.push("/home");
  }

  return (
    <button type="button" onClick={handleClick}>
      Go home
    </button>
  );
}

文档在这里

.

原文地址:https://www.cnblogs.com/jianxian/p/12585340.html

时间: 2024-10-09 16:34:13

react函数式组件(非路由组件)实现路由跳转的相关文章

受控组件 &amp; 非受控组件

p,pre,span,div,code { font-size: 16px } 在 React 中表单组件可分为两类,受控与非受控组件. 一. 受控组件 设置了 value 的 <input> 是一个受控组件. 对于受控的 <input>,渲染出来的 HTML 元素始终保持 value 属性的值.例如: render() { return <input type="text" value="Hello"/> } 上面的代码将渲染出

【vue】父组件主动调用子组件 /// 非父子组件传值

一  父组件主动调用子组件: 注意:在父组件使用子组件的标签上注入ref属性,例如: <div id="home"> <v-header ref="header"></v-header> <hr> 首页组件 <button @click="getChildData()">获取子组件的数据和方法</button> </div> 父组件主动获取子组件的数据和方法: 1

受控组件&amp;&amp;非受控组件

声明,本博客摘自:https://segmentfault.com/a/1190000002675685 表单组件像 input.textarea 不同于其它的原生组件,因为它们会随着用户交互而改变.这些组件提供了接口方便我们管理这些交互. 交互属性 表单组件提供了一些受用户交互影响的属性 value,支持input.textarea checked,支持input type类型是checkbox或者radio selected,支持option 在HTML中,textarea 的值是通过子属性

react路由组件&amp;&amp;非路由组件

<Route exact path="/Home" component={Home}/> 1.路由组件:只有包裹在Route组件里的才能使用`this.props.location`, 2.非路由组件:假如有个需求,是面包屑或者导航组件里需要拿到`this.props.location`(导航组件或者面包屑一般不会包裹在`Route`里吧),那么直接这么写显然就不行了. 这个时候`withRouter`修饰一下,就可以这么写了. . 原文地址:https://www.cnb

vue-router在组件化编码中,路由的使用步骤

一.在组件化编码中,路由的使用方法 1. 在路由组件文件夹下定义路由组件 和定义普通组件步骤相同 2. 在router.js文件中定义路由匹配规则 首先引入第一步中定义好的组件 import Home from './views/Home.vue' // 第二种引入方法,给 path 绑定组件时导入 ,有什么区别待查正,涉及赖加载 component: () => import(/* webpackChunkName: "search" */ './views/SearchUse

5.0 路由组件的使用

一.概述 路由器:路由器管理路由; 路由:路由是一种映射关系,一个key对应一个value,key是path,对于后台路由,     value是处理请求的回调函数,对于前台路由value是组件. 说明:1) 官方提供的用来实现 SPA(单个页面) 的 vue 插件2) github: https://github.com/vuejs/vue-router3) 中文文档: http://router.vuejs.org/zh-cn/4) 下载: npm install vue-router --

浅谈react受控组件与非受控组件

最近在使用蚂蚁金服出品的一条基于react的ant-design UI组件时遇到一个问题,编辑页面时input输入框会展示保存前的数据,但是是用defaultValue就是不起作用,输入框始终为空值而不是具体的传入的值.具体编辑页面中文本框相关的代码如下:         ... //render方法上面的内容省略  <FormItem       label="问题描述:"       hasFeedback      {...props.formItemLayout}  &g

VUE 路由组件左右滑动切换(移动端)

<template> <div id="headed"> <ul class="tab"> <li> <!-- @click="jump(index) index: 切换颜色 代表切换的路由文件 :class="{'active_color': index==0} 当index等于0的时候显示第一个,index:1 切换排球 --> <div class="body_bo

Vue.js—组件快速入门以及Vue路由实例应用

上次我们学习了Vue.js的基础,并且通过综合的小实例进一步的熟悉了Vue.js的基础应用.今天我们就继续讲讲Vue.js的组件,更加深入的了解Vue,js的使用.首先我们先了解一下什么是Vue.js的组件,组件其实就是页面组成的一部分,它是一个具有独立的逻辑和功能或页面,组件可以扩展 HTML 元素,封装可重用的代码.组件系统让我们可以用独立可复用的小组件来构建大型应用,几乎任意类型的应用的界面都可以抽象为一个组件树,如下图: 接下来我们就仔细讲讲组件的使用吧. 1 全局组件 以下就是我们注册