Vue Router不要再使用params传参了,params获取不到参数,官方删除params传参

这篇具有很好参考价值的文章主要介绍了Vue Router不要再使用params传参了,params获取不到参数,官方删除params传参。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题描述

之前说过,vue路由传参有两种方式,分别是queryparams;query是明文,params是隐藏的;
今天在使用params的时候发现获取不到参数了

我的写法:
1、 路由配置:

    {
        path:'/about',
        name:'about',
        component:About
    },

2、跳转:

this.$router.push({
    name:'about',
    params:{
        id:1
    }
})

3、接收:

console.log(this.$route.params);

4、结果:
得到一个警告和空对象
vue3 router.push params拿不到数据,vue,vue.js,javascript,前端

原因

查看链接4.1.4更新日志发现官方做了删除替代,那这样的话,这种方式就不能使用了,可以通过pinia(vuex)等进行传递

vue3 router.push params拿不到数据,vue,vue.js,javascript,前端

params的正确用法

本身params的定义是为了给动态路由使用的,比如
1、 路由配置:

    {
        path:'/about/:id',
        name:'about',
        component:About
    },

2、跳转:

this.$router.push({
    name:'about',
    params:{
        id:1
    }
})

或者

this.$router.push({
    path:'/about/1',
})

3、接收:

console.log(this.$route.params);

4、结果:
vue3 router.push params拿不到数据,vue,vue.js,javascript,前端文章来源地址https://www.toymoban.com/news/detail-685977.html

到了这里,关于Vue Router不要再使用params传参了,params获取不到参数,官方删除params传参的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 在vue3+ts项目里使用query和params传参

    一 query 传参 (类似get请求) query 传参方式① 传递方组件 home.vue 看下 router/index.ts 文件 有两个注意点 ① ref定义响应式基本类型数据后,修改和赋值要带上 .value ② query是一个对象类型 所以我们定义的基本类型数据不能直接赋值 要给对象式写法 {} 像以下两种写法都是报错的

    2024年01月17日
    浏览(32)
  • vue3中使用router路由实现跳转传参

    大家好,今天和大家分享一下vue3中如何进行跳转并进行传参。 vue3取消了vue2部分api,所以路由跳转和传值的方式会有所不同。 我们今天主要讲router.push(location, onComplete?, onAbort?) vue3中新增API:useRouter和useRoute 1.首先在需要跳转的页面引入API—useRouter 2.在跳转页面定义router变量

    2023年04月09日
    浏览(37)
  • Vue Router携带并接收query、params参数方式

    传递参数 【方式一:通过查询字符串直接拼接在路径后面】 【方式二:传递一个对象,路径是path属性,拼接的参数是query属性,推荐】 接收参数 【直接在$route.query中获取】 router/index.js 【需要在router中配置path、name】 传递参数 接收参数 在router/index.js中配置props属性 接收参

    2024年02月13日
    浏览(36)
  • 路由,vue-router的基本用法,vue-router的常见用法$route.params、$router.push、$router.replace、$router.go

    路由(英文: router)就是 对应关系 。 SPA指的是一个web网站只有唯一的一个HTML页面, 所有组件的展示与切换 都在这唯一的一个页面内完成。此时, 不同组件之间的切换 需要通过 前端路由 来实现。 *结论:*在SPA项目中, 不同功能之间的切换 ,要 依赖于前端路由 来完成! 通俗

    2024年01月16日
    浏览(50)
  • 【Vue-Router】路由传参

    list.json login.vue reg.vue App.vue index.ts reg.vue item?.name ,item?.price ,item?.id ,他们如果不使用可选链操作符会出现报错: \\\'__VLS_ctx.item\\\' is possibly \\\'undefined\\\'. login.vue 注意: 传递 params 参数时,若使用 to 的对象写法,必须使用 name 配置项,不能用 path 。 传递 params 参数时,需要提前在规

    2024年02月13日
    浏览(37)
  • [Vue Router warn]: Discarded invalid param(s) “id“ when navigating. Seexxxxxxxfor more details

     警告信息建议访问的链接 场景: 当我 在vue3 组合式api中尝试使用name+params去路由跳转并传递参数的时候,出现警告信息,并且接收不到params的参数。代码如下: a页面跳转b页面 点击链接查看到更新日志 也就是说,从Vue Router的2022-8-22 这次更新后,我们使用上面的方式在新页

    2024年02月07日
    浏览(50)
  • C#使用HTTP发送POST Params传参值为Json字符串解决

    Post:方法         public static string Post(string url, Dictionarystring, string dic)         {             string tempMessage = \\\"\\\";             System.Net.WebClient WebClientObj = new System.Net.WebClient();             System.Collections.Specialized.NameValueCollection PostVars = new System.Collections.Specialized.NameValueCol

    2024年02月06日
    浏览(37)
  • Vue Router4 ,prams 传参失效和报错问题

    我尝试使用 prams 传递数据 在接收页面尝试渲染 prams 传递的数据: 当我跳转页面时,得到的 prams 数据为空 ,控制台也出现了 Vue Router 的警告 点开链接后发现了原因, 点击查看更新日志 也就是说,从Vue Router的2022-8-22 这次更新后,我们使用上面的方式在新页面无法获取: vue也给我

    2023年04月23日
    浏览(71)
  • vue通过router地址传参跳转同一路由页面,页面不刷新的解决办法

    vue、 vue-router@4 记录一下最近遇到的vue路由页面间的跳转的问题,其中就涉及到了不同路由的跳转(/a/b1 = /a/b2)、相同路由不同参数间的跳转(/a/b?c=1 = /a/b?c=2)、相同页面锚点跳转(/a/b#id1 =/a/b#id2) 原因:渲染的是同一组件 解决:可以在不刷新的页面通过监听route,重新加载

    2024年02月04日
    浏览(58)
  • typescript找不到模块‘vue‘ ‘vue-router‘

      import { createRouter, createWebHashHistory, createWebHistory } from \\\'vue-router\\\' 提示:找不到模块“vue-router”。你的意思是要将 \\\"moduleResolution\\\" 选项设置为 \\\"node\\\",还是要将别名添加到 \\\"paths\\\" 选项中?ts(2792) 方案一  获取声明文件 如果你开始做转换到TypeScript导入,你可能会遇到Cannot find modu

    2024年02月10日
    浏览(32)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包