this.$router.push、replace、go的区别

1.this.$router.push()

描述:跳转到不同的url,但这个方法会向history栈添加一个记录,点击后退会返回到上一个页面。

用法:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
this.$router.push('/index')
 this.$router.push({path:'/index'})
 this.$router.push({path:'/index',query:{name: '123'}})
 this.$router.push({name:'index',params:{name:'123'}})
// 字符串
 
 router.push('home')
 // 对象
 this.$router.push({path: '/login?url=' + this.$route.path});
 // 带查询参数,变成/backend/order?selected=2
 this.$router.push({path: '/backend/order', query: {selected: "2"}});
 // 命名的路由
 router.push({ name: 'user', params: { userId: 123 }})

  

 

2.this.$router.replace()

描述:同样是跳转到指定的url,但是这个方法不会向history里面添加新的记录,点击返回,会跳转到上上一个页面。上一个记录是不存在的。

3.this.$router.go(n)

相对于当前页面向前或向后跳转多少个页面,类似 window.history.go(n)。n可为正数可为负数。正数返回上一个页面

1
2
3
4
5
6
//声明式:
 <router-link :to="..." replace></router-link>
 // 编程式:
 router.replace(...)
 //push方法也可以传replace
 this.$router.push({path: '/home', replace: true})

  

 

posted @   骇客黑界  阅读(294)  评论(0编辑  收藏  举报
编辑推荐:
· 后端思维之高并发处理方案
· 理解Rust引用及其生命周期标识(下)
· 从二进制到误差:逐行拆解C语言浮点运算中的4008175468544之谜
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
阅读排行:
· 2025成都.NET开发者Connect圆满结束
· 后端思维之高并发处理方案
· 千万级大表的优化技巧
· 在 VS Code 中,一键安装 MCP Server!
· 10年+ .NET Coder 心语 ── 继承的思维:从思维模式到架构设计的深度解析
点击右上角即可分享
微信分享提示