需求
因?yàn)槟承┰?,某個(gè)頁(yè)面的加載需要很長(zhǎng)時(shí)間。為了不讓用戶重新加載,再次等待很長(zhǎng)時(shí)間,決定當(dāng)從這個(gè)頁(yè)面跳轉(zhuǎn)其他頁(yè)面時(shí),打開(kāi)一個(gè)新窗口。
編程時(shí)導(dǎo)航
使用路由對(duì)象的resolve方法解析路由,可以得到location、router、href等目標(biāo)路由的信息。得到href就可以使用window.open開(kāi)新窗口了。
當(dāng)頁(yè)面有一個(gè)跳轉(zhuǎn)時(shí)
const { href } = this.$router.resolve({
name: "router-name",
query: {
id: 1
}
});
window.open(href, '_blank');
當(dāng)頁(yè)面有多個(gè)跳轉(zhuǎn)時(shí)
let routeOne = this.$router.resolve({
name: "router-one",
query: {
id: 1
}
});
window.open(routeOne.href, '_blank');
let routeTwo = this.$router.resolve({
name: "router-two",
query: {
id: 1
}
});
window.open(routeTwo.href, '_blank');
<router-link>標(biāo)簽
<router-link tag="a"
target="_blank"
:to="{ name: 'router-name', query: {id: 1} }">
</router-link>