單頁面應用打開新的標簽頁
將vue-router和windwow.open結合使用。原理很簡單,獲取到需要跳轉的地址,再把地址傳遞給window.open。
let newpage = this.$router.resolve({
name: 'messageInfo',
query:{
objectType:1,
infoId:id
}
})
window.open(newpage.href, '_blank');
原標簽頁如何監聽新標簽頁事件
新標簽頁面:(比如詳情頁面)
將freshClueNum
存入localStorage
,設置值為當前時間,每當需要觸發原頁面事件時,就改變freshClueNum
的值即可
localStorage.setItem('freshClueNum', new Date().getTime())
原標簽頁面:(比如列表頁面)
通過監聽storage
中freshClueNum
的變化來判斷是否觸發事件
mounted() {
window.addEventListener("storage", ev => {
if(ev.key === 'freshClueNum'){
// 業務處理邏輯
}
})
}