时间:2021-05-25
React中传参方式有很多,通过路由传参的方式也是必不可少的一种。
本文记录项目中会用到的路由传参方式: 路由跳转传参API + 目标路由获取参数的方式。
一、动态路由
跳转方法
Link
<Link to={{ pathname: "/user/add/1" }}>跳转新增页面</Link>history.push
this.props.history.push("/user/add/1");获参方法
this.props.match.params二、路由query显示参数
Link跳转
<Link to={{ pathname: "/user/add", query: { id: 1 } }}> 跳转新增页面 </Link>history.push
this.props.history.push({ pathname: "/user/add", //参数 query: { id: 1 }, });获参方法
this.props.location.query三、路由state隐式参数
Link跳转
<Link to={{ pathname: "/user/add", state: { id: 1 } }}> 跳转新增页面 </Link>history.push
this.props.history.push({ pathname: "/user/add", state: { id: 1 }, });获参方法
this.props.location.state代码DEMO
入口App组件
class App extends React.Component { render() { return ( <BrowserRouter> <Route path="/user" exact component={User} /> //动态路由 <Route path="/user/add/:id?" component={UserAdd} /> {} </BrowserRouter> ); }}动态路由Demo
User组件
import React, { Component } from "react";import { Link } from "react-router-dom";export default class User extends Component { render() { return ( <div> <div className="user">User</div> {} <button onClick={() => { // 1. // this.props.history.push("/user/add/1"); // 2. this.props.history.push({ pathname: "/user/add/1", }); }} > 跳转新增页面 </button> </div> ); }}UserAdd组件
import React, { Component } from "react";export default class UserAdd extends Component { render() { console.log("this.props.match.params:", this.props.match.params); return <div>UserAdd</div>; }}路由query显示参数Demo
User组件
import React, { Component } from "react";import { Link } from "react-router-dom";export default class User extends Component { render() { return ( <div> <div className="user">User</div> <Link to={{ pathname: "/user/add", query: { id: 1 } }}> 跳转新增页面 </Link> <button onClick={() => { this.props.history.push({ pathname: "/user/add", query: { id: 1 }, }); }} > 跳转新增页面 </button> </div> ); }}路由state隐式参数Demo
User组件
import React, { Component } from "react";import { Link } from "react-router-dom";export default class User extends Component { render() { return ( <div> <div className="user">User</div> <Link to={{ pathname: "/user/add", state: { id: 1 } }}> 跳转新增页面 </Link> <button onClick={() => { this.props.history.push({ pathname: "/user/add", state: { id: 1 }, }); }} > 跳转新增页面 </button> </div> ); }}到此这篇关于详解React路由传参方法汇总记录的文章就介绍到这了,更多相关React路由传参内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Angular路由传参首页路由传参柳絮飞祭奠$state.go传参数传参数varapp=angular.module("app",['ui.router']);
本文实例讲述了vue路由传参的基本实现方式。分享给大家供大家参考,具体如下:前言vue路由传参的使用场景一般都是应用在父路由跳转到子路由时,携带参数跳转。传参方
本文介绍了react路由配置,最近刚开始学,分享给大家,顺便给自己留个笔记。包含了LInk跳转以及js触发跳转并传参。这是项目的目录结构,主要的代码都在src目
第一种传参方式,动态路由传参通过设置link的path属性,进行路由的传参,当点击link标签的时候,会在上方的url地址中显示传递的整个url首页如果想真正获
最近项目中涉及到跨页面传参数和后台进行数据交互,看到需求之后第一反应就是用路由传参来解决;Vue中给我们提供了三种路由传参方式,下面我们一个一个的来看一下:方法