vue單頁面應用開啟新視窗顯示跳轉頁面的方法
阿新 • • 發佈:2020-07-15
一般單頁面應用,例如vue都是通過vue-router來做跳轉,不會像多頁應用一樣另起新頁面顯示,但是也不排除一些業務上的需要。
例如,展板,監控屏等等。
程式碼參考如下:
當點選的路由名稱為“locStatusScreen”時,則進行新頁面跳轉開啟,開啟的頁面還是當前單頁面功能的其中一個頁面。
當點選的路由名稱為“gridManagement”時,則進行單點登入跳轉開啟,開啟的頁面是第三方系統的某個頁面。
onClick(data) { let hasChild = data.children && !!data.children.length; if (data.menuCode === "gridManagement") { openClient(this.$store.state.loginInfo.accountName); // 當要進入到systemConfig(系統配置)頁面時,重新開啟一個網頁載入另一個頁面 } else if (data.menuCode === "systemConfig") { this.toSystemConfig(); } else if(data.menuCode === "locStatusScreen") { const {href} = this.$router.resolve({ name: data.menuCode, params: {} }); window.open(href, '_blank'); } else { !hasChild && this.$router.push({ name: data.menuCode }) } }, async toSystemConfig() { try { let { data } = await getSysmgr(); // 猜測應該是執行了單點登入功能,返回帶有使用者資訊的url window.open(data, "_blank"); } catch (e) { this.$Message.error(e) } }