react路由传值有几种方式

react路由传值有三种方式:1、“props.params”方法,该方法可以传递一个或多个值,但是每个值的类型都是字符串,没法传递一个对象;2、query方法,该方法类似于表单中的get方法,传递参数为明文,但是刷新页面参数会丢失;3、state方法,该方法获取参数时要用“this.props.match.params.name”,并且刷新页面参数也会丢失。

react路由传值有几种方式

本教程操作环境:Windows10系统、react17.0.1版、Dell G3电脑。

react路由传值有几种方式

路由传值的方法有三种

1.props.params(推荐)

//设置路由      import { Router,Route,Link,hashHistory} from 'react-router';class App extends React.Component {  render() {    return (              用户        // 或者        hashHistory.push("/user/sam");    )  }}

登录后复制

当页面跳转到UserPage页面之后,取出传过来的值:

export default class UserPage extends React.Component{    constructor(props){        super(props);    }    render(){        return(
this.props.match.params.name
)    }}

登录后复制

上面的方法可以传递一个或多个值,但是每个值的类型都是字符串,没法传递一个对象,如果传递的话可以将json对象转换为字符串,然后传递过去,传递过去之后再将json字符串转换为对象将数据取出来

//定义路由//设置参数var data = {id:3,name:sam,age:36};data = JSON.stringify(data);var path = `/user/${data}`;//传值用户//或hashHistory.push(path);//获取参数var data = JSON.parse(this.props.params.data);var {id,name,age} = data;

登录后复制

2.query(不推荐:刷新页面参数丢失)

query方式使用很简单,类似于表单中的get方法,传递参数为明文

//定义路由//设置参数var data = {id:3,name:sam,age:36};var path = {  pathname:'/user',  query:data,}//传值用户//或hashHistory.push(path);//获取参数var data = this.props.location.query;var {id,name,age} = data;

登录后复制

3.state(不推荐,刷新页面参数丢失)

state方式类似于post方式,使用方式和query类似

//设置路由//设置参数var data = {id:3,name:sam,age:36};var path = {  pathname:'/user',  state:data,}//传值用户//或hashHistory.push(path);//获取参数var data = this.props.location.state;var {id,name,age} = data;

登录后复制

特别提示:

1,获取参数时要用this.props.match.params.name

2,如果在子组件里打印要记得传this.props,如下:

class Todolist extends Component {    render() {       return (                      
              
               //不传的话this.props为空对象           
                              
                  );    } }export default Todolist;

登录后复制

【相关推荐:javascript视频教程、web前端】

以上就是react路由传值有几种方式的详细内容,更多请关注【创想鸟】其它相关文章!

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

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

(0)
上一篇 2025年3月11日 19:36:15
下一篇 2025年3月11日 19:36:22

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

相关推荐

  • react虚拟dom有什么用处

    react虚拟dom的用处:1、提升react代码性能,虚拟DOM是一个js对象,创建一个js对象消耗的性能和创建一个真实DOM要小很多,把创建真实DOM替换为创建虚拟DOM就会有极大的性能上的提升;2、实现跨端应用,在浏览器端是将虚拟DO…

    2025年3月11日
    000
  • vue和react的数据流有什么区别

    vue和react的数据流区别是:vue是响应式的数据双向绑定系统,也即双向绑定数据流,当数据发生变化的时候,视图也就发生变化,当视图发生变化的时候,数据也会跟着同步变化;而react是单向数据流,没有双向绑定,数据主要从父组件流向子组件。…

    2025年3月11日
    200
  • react生命周期的三个过程是什么

    react生命周期的三个过程:1、挂载期,也叫实例化期,是一个组件实例初次被创建的过程;2、更新期,也被称为存在期,是组件在创建之后再次渲染的过程;3、卸载期,也被称为销毁期,是组件在使用完后被销毁的过程。 本教程操作环境:Windows1…

    2025年3月11日 编程技术
    200
  • react中map方法怎么用

    在react中,map方法用于遍历和显示组件的类似对象列表;map方法并不是react特有的,可以在任何数组上调用标准的JavaScript函数,map方法通过对调用数组的每个元素调用提供的函数来创建数组。 本教程操作环境:Windows1…

    2025年3月11日
    200
  • 什么是react?什么是Ant Design?

    react是Facebook推出的一个用来构建用户界面的JavaScript开发框架,主要用于构建UI,可使创建交互式UI变得轻而易举。Ant Design是阿里蚂蚁金服团队基于React开发的ui组件,主要用于中后台系统的使用;它它使用T…

    2025年3月11日 编程技术
    200
  • 什么是react条件渲染

    在react中,条件渲染是指在指定条件下进行渲染,如果不满足条件则不进行渲染;即界面的内容会根据不同的情况显示不同的内容,或者决定是否渲染某部分内容。react条件渲染的方式:1、条件判断语句,适合逻辑较多的情况;2、三元运算符,适合逻辑比…

    2025年3月11日 编程技术
    200
  • react中什么是父子组件

    在react组件的相互调用中,把调用者称为父组件,被调用者称为子组件。父子组件间可以传值:1、父组件向子组件传值时,先将需要传递的值传递给子组件,然后在子组件中,使用props来接收父组件传递过来的值;2、子组件向父组件传值时,需要通过触发…

    2025年3月11日 编程技术
    200
  • react新旧生命周期的区别是什么

    react新旧生命周期的区别:1、新生命周期中去掉了三个will钩子,分别为componentWillMount、componentWillReceiveProps、componentWillUpdate;2、新生命周期中新增了两个钩子,分…

    2025年3月11日
    200
  • react有哪些插件

    react插件有:1、Redux,提供可预测化的状态管理;2、MobX,通过函数响应式编程使得状态管理变得简单和可扩展;3、Redux Thunk,Redux的异步处理中间件;4、Dva,一个基于redux和redux-saga的数据流方案…

    2025年3月11日
    200
  • vue与react属于什么框架

    vue与react属于JavaScript框架。vue是一套用于构建用户界面的渐进式JavaScript框架,Vue的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。react是一个用来构建用户界面的JavaScrip…

    2025年3月11日
    200

发表回复

登录后才能评论