1. 程式人生 > 實用技巧 >vue單頁面應用開啟新視窗顯示跳轉頁面的方法

vue單頁面應用開啟新視窗顯示跳轉頁面的方法

一般單頁面應用,例如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)
            }
        }