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博客

相关推荐
果然_16 小时前
为什么你的 PR 总是多出一堆奇怪的 commit?90% 的人都踩过这个 Git 坑
前端·git
RONIN16 小时前
vue自定义指令与自定义插件
vue.js
xpyjs16 小时前
零依赖、链式调用、可变对象:重新设计 JavaScript 颜色处理体验
前端
WayneYang16 小时前
Node.js 全栈知识点详细整理(含代码示例 + 前端结合实战)
前端·node.js
土拨鼠爱coding16 小时前
Chrome插件 - DIY Theme
前端·chrome
小赵同学WoW16 小时前
CSS作用域穿透选择器
前端·css
RONIN16 小时前
属性透传attribute与性能优化组件(component、异步组件、keep-alive/Suspense/Teleport/Transition)
vue.js
GreenTea17 小时前
Deep Dive into Claude Code:源码泄漏引发的AI Agent架构全解析
前端·人工智能·后端
RePeaT17 小时前
【Next.js】基础知识速查
前端·react.js·next.js
yyuuuzz17 小时前
独立站搭建:从入门到避坑实战
前端·git·github