vue 跳转新窗口的方法

1.使用router-link

javascript 复制代码
<router-link :to="{ name: 'pageA', params: { id: Id}}" tag="a" target="_blank">新页面</router-link>
  • to 指的要跳转的路由以及参数,params指的参数需要在URL中隐藏 ;如果需要显示在URL中,则使用 query。
  • tag="a" 指定渲染为 <a> 标签。<router-link> 默认并不直接支持 target="_blank" 属性,将其渲染为原生的a标签
  • target="_blank" 打开新链接,必须添加tag="a" 才有作用

2.使用$router.resolve

适用于@绑定了点击事件需要跳转的场景

javascript 复制代码
<button @click="openNewPage(e)">打开新页面</button>
javascript 复制代码
methods: {
  openNewPage(e) {
    const routeUrl = this.$router.resolve({ name: 'pageA', params: { id: e } });
    window.open(routeUrl.href, '_blank');
  }
}

3.window.open

适用于有新的完整的链接跳转,将新链接的url放入open中即可

javascript 复制代码
window.open('https://www.example.com');

参考博客:vue router-link 跳转 打开新标签页面_ant design vue router-link打开新的标签页 并传参-CSDN博客

相关推荐
山河已无恙32 分钟前
BPF-eBPF 开发路线二:libbpf、CO-RE 与 libbpf-bootstrap认知
javascript·bootstrap·php
IT_陈寒33 分钟前
Python闭包里藏的这个坑,差点让我加班到凌晨
前端·人工智能·后端
IT_陈寒33 分钟前
Java注解空指针?这个坑我踩得莫名其妙
前端·人工智能·后端
H0r1zon.1 小时前
PinCopy:双击 Ctrl,把剪贴板「钉」在屏幕上
前端
kyriewen1 小时前
大厂面试新规:不会用AI编程,直接挂
前端·面试·ai编程
努力找实习的前端小白1 小时前
useImperativeHandle,useRef,forwardRef的协作关系
前端·面试
ZengLiangYi1 小时前
React Query + REST API 最佳实践
javascript·后端·react.js
ZengLiangYi1 小时前
Fastify 加 Electron:把 Web 服务嵌进桌面应用
前端·javascript·后端
qq_2518364572 小时前
基于nodejs express +vue 天天商城系统设计与实现 (源码 文档)
前端·vue.js·express
胡萝卜术2 小时前
从零搭建生成式AI项目:OpenAI + Node.js 环境配置与密钥安全实践
前端·javascript·面试