React V6路由跳转,跳转传参(params,search,state)

这篇具有很好参考价值的文章主要介绍了React V6路由跳转,跳转传参(params,search,state)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

注意:以下代码为个人笔记,不全,需自行调整,方可使用

定义路由
<Route path='/paramsPage/:testId/:testTitle' element={<ParamsPage />}></Route>
<Route path='/SearchPage' element={<SearchPage />}></Route>

公共跳转方法文章来源地址https://www.toymoban.com/news/detail-507387.html

import { useNavigate,Link  } from 'react-router-dom';
//跳转页面
  const navigate = useNavigate();
  const toPage = (path)=>{
    navigate(`${path}?id=` + 123);
  }

  const toPage2 = (path)=>{
    //既有search传参也有state传参 目标页面可见   link跳转也是一样  增加一个state的属性
    navigate(path,{state:{testId,testTitle}});
  }
const testId = 4455
  const testTitle = 'link跳转页面并传参'

<button onClick={() => toPage('/testShow')}>navigate跳转页面并query传参</button>
{/* link跳转 */}
 <button>
        <Link to={`/searchPage?testId=${testId}&&testTitle=${testTitle}`}>
        link跳转页面并search传参</Link>
      </button>
      {/* 函数跳转 */}
      <button onClick={()=>toPage2(`/searchPage?testId=${testId}&&testTitle=${testTitle}`)}>link跳转页面并search传参</button>


//目标页面接受传参
import { Link, useNavigate,useLocation   } from 'react-router-dom'
const location = useLocation();
  console.log('夫斯基大街',location.state)
  const searchParams = new URLSearchParams(location.search);
  const testId = searchParams.get('testId');
  const testTitle = searchParams.get('testTitle');
{/* link跳转 */}
<button>
        <Link to={`/paramsPage/${testId}/${testTitle}`}>
        link跳转页面并params传参</Link>
      </button> 
      {/* 函数跳转 */}
      <button onClick={()=>toPage2(`/paramsPage/${testId}/${testTitle}`)}>link跳转页面并params传参</button>


//目标页面接受传参
  // 接收params参数   link方式params接收参数
  import { Link, useNavigate,useParams  } from 'react-router-dom'
  const { testId, testTitle } =  useParams();

到了这里,关于React V6路由跳转,跳转传参(params,search,state)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue3路由跳转params传参接收不到

    这样路由可以跳转过去,但接收到了params是一个空对象 原因:由于之前的params传参在页面刷新之后,参数会丢失,所以vue将这种方法移除了。 vue推荐的路由跳转传参方法: 1.使用query传递参数 2.使用vuex、pinia对参数进行存储 3.使用 History API 方式传递和接收

    2024年02月09日
    浏览(38)
  • vue3路由跳转params传参接收不到?

    一、之前的用法 这样路由可以跳转过去,但接收到了params是一个空对象。 二、解决方法 通过查找资料,发现了原因。 https://github.com/vuejs/router/blob/main/packages/router/CHANGELOG.md#414-2022-08-22 由于之前的params传参在页面刷新之后,参数会丢失,所以vue将这种方法移除了。 vue推荐的路

    2024年02月12日
    浏览(32)
  • 【vue2第十七章】VueRouter 编程式导航跳转传参(点击按钮跳转路由和如何传递参数)

    如何在js进行跳转路由 在一些需求中,我们需要不用点击a标签或者router-link,但是也要实现路由跳转,比如登陆,点击按钮搜索跳转。那么这种情况如何进行跳转呢? 直接再按钮绑定的方法中写 this.$router.push(\\\'路由路径\\\') 即可。 代码示范 this.$router.push(\\\"/跳转路径\\\") 或者 this

    2024年02月09日
    浏览(33)
  • JS中跳转传参的几种方法

    在JavaScript中,页面跳转并传递参数主要有以下几种方法: 1. 使用URL的查询字符串 这是最常见的方法,你可以在URL后面添加查询字符串来传递参数。查询字符串以 ? 开始,参数之间用 分隔。 例如: 在接收页面,你可以使用 window.location.search 来获取查询字符串,然后解析它来

    2024年04月26日
    浏览(33)
  • 微信小程序跳转传参的方法

    目的: 带着第一个页面的id,传到第二个页面,实现同一个页面,点击不同商品显示对应的数据 首先在第一个页面的js文件中写好接口 随后在wxml中写上点击事件,注意这个 data-id=\\\"{{item.id}}\\\" 随后在写上点击事件 先console一个e 看需要拿到什么数据  console的结果是 currentTarget下

    2024年02月06日
    浏览(37)
  • <React-Router>超全react路由知识点(跳转、传参、子路由、重定向等)

    目录 一、路由环境配置 1.搭建一个项目名为boke(自定义),编辑文档语言为TypeScript的项目环境。 2.安装所有package.json中的依赖----安装包(注意要【cd 项目名】进入项目文件安装) 3.添加React-Router路由 4.文件、目录相关修改与搭建 二、路由的懒加载  三、路由跳转 1.标签跳转(

    2024年02月11日
    浏览(41)
  • 小程序wx.navigateToMiniProgram跳转传参和接收参数

    小程序wx.navigateToMiniProgram跳转传参和接收参数 看了好多没有具体的步骤,自己写一下 传参 wx.navigateToMiniProgram({ appId: \\\'\\\', path: \\\'page/index/index?id=123\\\', extraData: { foo: \\\'bar\\\' }, envVersion: \\\'develop\\\', success(res) { // 打开成功 } }) 对应小程序接收参数 需要在app.js App.onLaunch , App.onShow 中接收,数

    2024年02月09日
    浏览(38)
  • uniapp开发微信小程序问题笔记-页面跳转传参

    页面跳转传参,一般都是字符串类型,传bool类型也会被当做字符串处理 举例:点击页面跳转并传参,跳转页面从onLoad中的option接收参数 isgas 父子组件的数据交互 在之前的博客里简单介绍过父子通信方法:父传子props,子传父$emit 这里再补充一个父调用子组件的方法 $refs 子组件

    2024年02月11日
    浏览(34)
  • uniapp微信小程序 页面跳转传参(uni.switchTab传参无法获取,uni.reLaunch传参可以获取)

      因为是tab页面,我首先想到的就是通过:uni.switchTab进行页面跳转。 代码如下: 然后在首页的onShow生命周期函数中进行监听路由参数。 代码如下: 结果uni.switchTab跳转的页面是不能够将路由参数传递到页面中的。  这样就可以拿到路由中的参数了。  这样问题就解决了。

    2024年02月10日
    浏览(44)
  • React导航守卫(V6路由)

    下载: 当登录之后才可以去访问其他页面 (1)在登录页面,我们点击登录的时候,保存一个token,在登录页面引入重定向useNavigate (2)在存放路由的文件中,封装一个高阶组件 封装一个高阶组件(其实就是函数,这个函数要接收一个组件作为参数,返回一个组件) (3)当我们给首页

    2024年01月18日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包