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

相关推荐
也无晴也无风雨1 小时前
深入剖析输入URL按下回车,浏览器做了什么
前端·后端·计算机网络
Martin -Tang2 小时前
Vue 3 中,ref 和 reactive的区别
前端·javascript·vue.js
FakeOccupational3 小时前
nodejs 020: React语法规则 props和state
前端·javascript·react.js
放逐者-保持本心,方可放逐3 小时前
react 组件应用
开发语言·前端·javascript·react.js·前端框架
曹天骄4 小时前
next中服务端组件共享接口数据
前端·javascript·react.js
阮少年、4 小时前
java后台生成模拟聊天截图并返回给前端
java·开发语言·前端
郝晨妤6 小时前
鸿蒙ArkTS和TS有什么区别?
前端·javascript·typescript·鸿蒙
AvatarGiser6 小时前
《ElementPlus 与 ElementUI 差异集合》Icon 图标 More 差异说明
前端·vue.js·elementui
喝旺仔la6 小时前
vue的样式知识点
前端·javascript·vue.js
别忘了微笑_cuicui6 小时前
elementUI中2个日期组件实现开始时间、结束时间(禁用日期面板、控制开始时间不能超过结束时间的时分秒)实现方案
前端·javascript·elementui