使用vue的路由打开新标签页跳转

vue的路由只支持在本标签页跳转,要用vue的路由打开新标签页需要做处理再用window.open方法打开:

javascript 复制代码
// 在当前标签页中跳转
router.push({
    path: '/new-page',
    query: {
        id: id.toString(),
    }
});
javascript 复制代码
// 在新标签页中打开
const routeData = router.resolve({
    path: '/new-page',
    query: {
        id: id.toString(),
    }
});
window.open(routeData.href, '_blank');

解释:

  1. router.push: 这是 Vue Router 提供的用于在当前标签页中进行路由跳转的方法。

  2. router.resolve : 这个方法会返回一个包含 href 等属性的对象,href 是解析后的完整 URL。

  3. window.open : 这是原生的 JavaScript 方法,用于在新标签页中打开指定的 URL。'_blank' 参数表示在新标签页中打开

相关推荐
Yvette几秒前
Node.js 22 和 23 版本 TypeScript 运行支持的变化
前端
四七伵5 分钟前
MySQL为什么会索引失效?十大常见场景及避坑指南
前端·mysql
helloYaJing16 分钟前
前端性能优化-DNS预解析
前端
小刘不知道叫啥18 分钟前
聊一下CSS层叠
前端·css
Carnia21 分钟前
如何使用cloudflare实现域名证书的多服务器分发
前端·后端
用户8476191707326 分钟前
从同源策略到ES6新特性
前端
Epicurus26 分钟前
ES6对object类型做的常用升级优化
前端
烂蜻蜓26 分钟前
深入理解 HTML 文本格式化
前端·html
孜孜不倦不忘初心27 分钟前
JavaScript 常用数组方法总结
javascript
中微子27 分钟前
响应式设计(Responsive Design)
前端·javascript