vue+ts+router实现单页面打开新窗口,不显示侧边栏问题(返回上一页,保留数据)

1. 单页面点击打开详情页为新窗口打开

  

const param :any ={
id:row.RELIC_INFO_ID,
categoryCode : row.CATEGORYID,
classCode : row.CLASSID,
reliCode:row.RELICCODE,
};

把普通的路由跳转方式:
this.$router.push({path: 'objectDetail',query:param});

更换成一下方法:

let routeData = this.$router.resolve({
name: "objectDetail", // 要跳转的路径的名称
query: param, // 跳转要携带的参数
params:{catId:param.catId} // 可以不写
});

window.open(routeData.href, '_blank');

2. 新窗口打开去掉侧边栏

思路: 在写侧边栏的页面,加一个标识,监听路由变化,如果路由是要打开的新窗口的路由,则标识为true, 理由v-if 决定是否创建侧边栏组件

原文地址:https://www.cnblogs.com/evident/p/14442391.html