vue3中,route4,獲取當前頁面路由的問題

首先應用場景如下:

在main.js里面,引入的是路由的配置文件,如下:

import {router} from '@/router';
app.use(router);

路由配置文件router.js如下:

import { createRouter, createWebHistory } from 'vue-router';
import Page1 from '../views/Page1.vue';
import Page2 from '../views/Page2.vue';const routes = [{path:'/',redirect:'/login',component:()=>('@/views/index'),children:[path:'page',redirect:'/a/b',children:[{},{}] ]},{path: '/page1',name: 'login',component: Page1},{path: '/page2',name: 'Page2',component: Page2}
];const router = createRouter({history: createWebHistory(),routes
});export default router;
router.beforeEach((to,from,next))=>{const token = getToken('token');if(to.name!=='login' && !token){next({name:'login'})}else{next()}
}

引用組件如下:

<template><button @click="handleLogout">退出</button>
</template><script setup>
import {router} from '@/router';
//!!!注意,此時,useRoute是不能用的,因為引入順序的問題。需要先引入下面一行,再引入上面一行。
import { useRoute } from 'vue-router';// 獲取當前路由對象
const route = useRoute();const handleLogout = () => {const currentPath = route.path;switch (currentPath) {case '/page1':// 在 page1 頁面點擊退出按鈕時的操作console.log('在 page1 頁面執行退出操作');// 可以添加具體的退出邏輯,比如清除緩存、跳轉到登錄頁等break;case '/page2':// 在 page2 頁面點擊退出按鈕時的操作console.log('在 page2 頁面執行退出操作');// 可以添加不同的退出邏輯break;default:// 其他頁面的默認退出操作console.log('在其他頁面執行退出操作');break;}
};
</script>

總之注意引入順序,應先引入useRoute再引入router.js。要不然獲取不到本頁路徑。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/74784.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/74784.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/74784.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ip改變導致的數據庫連接不上

前言 需要用到路由器&#xff0c;所以先把家里的路由器給拆了先用著。新的路由器到了之后&#xff0c;更換上新的路由器之后&#xff0c;調用到服務會有報錯&#xff0c;記錄一下更換路由器之后ip重新分配服務可能會報的錯. 進一步可以看到有關網路在服務當中的影響。 正文 …

Chrome 開發環境快速屏蔽 CORS 跨域限制!

Chrome 開發環境快速屏蔽 CORS 跨域限制【詳細教程】 ? 為什么需要臨時屏蔽 CORS&#xff1f; 在前后端開發過程中&#xff0c;我們經常會遇到 跨域請求被瀏覽器攔截 的問題。例如&#xff0c;你在 http://localhost:3000 調用 https://api.example.com 時&#xff0c;可能會…

【力扣hot100題】(009)和為K的子數組

還是太菜了&#xff08;我&#xff09;&#xff0c;寫了半天滑動窗口&#xff0c;然后看了答案又寫了半天時間超限…… 總之就是記錄每前n個子串的和&#xff0c;然后使用hash存儲和為某個值出現的次數&#xff0c;每次求得新和就看看是否存在前面新和-k的字符&#xff0c;有的…

使用 rsync 進行服務器文件同步與優化

使用 Rsync 工具在兩臺 Linux 服務器之間同步文件 Rsync 是一種高效的文件同步工具&#xff0c;它可以在本地或遠程服務器之間同步文件和目錄。Rsync 通過僅傳輸文件的變化部分來減少數據傳輸量&#xff0c;因此特別適合用于定期備份或同步大量數據。本文將詳細介紹如何將 A 服…

卷積神經網絡 - 微步卷積、空洞卷積

一、微步卷積 微步卷積&#xff08;Fractionally Strided Convolution&#xff09;&#xff0c;通常也稱為轉置卷積&#xff08;Transposed Convolution&#xff09;或反卷積&#xff08;Deconvolution&#xff09;&#xff0c;是深度學習&#xff08;尤其是卷積神經網絡&…

詳解java體系實用知識總結

0.java技術能力框架 基礎模塊應用模塊綜合模塊技術崗位與面試流程常用工具集系統架構設計計算機基礎常用框架微服務架構jvm原理緩存容器化多線程隊列云計算&#xff08;阿里云/aws&#xff09;設計模式數據庫數據結構與算法 1.常用設計模式與應用場景 工廠模式&#xff1a;s…

設計模式之創建型5種

設計模式 為什么設計模式是23種創建型 對象創建為什么設計模式是23種 設計模式之所以被歸納為23種,而非其他數量,源于GoF(Gang of Four)在1994年的系統性總結和分類。這一數量的確定并非偶然,而是基于以下核心原因: 他們遵循“大三律”(Rule of Three),即只有經過三個…

Oracle 23ai Vector Search 系列之2 ONNX(Open Neural Network Exchange)

文章目錄 Oracle 23ai Vector Search 系列之2 ONNX(Open Neural Network Exchange)ONNX基本概念ONNX(Open Neural Network Exchange)ONNX Runtime ONNX Runtime 在Oracle數據庫中的集成參考 Oracle 23ai Vector Search 系列之2 ONNX(Open Neural Network Exchange) 我們在看【…

統一語言學習范式

摘要 現有的預訓練模型通常針對特定類別的問題。迄今為止&#xff0c;關于何種架構和預訓練設置應為最佳似乎仍未達成共識。本文提出了一個統一的框架&#xff0c;用于預訓練在多種數據集和設置中普遍有效的模型。我們首先將架構原型與預訓練目標這兩個常被混為一談的概念進行…

Flutter項目升級到指定版本的詳細步驟指南

一、升級前的準備工作 備份項目 使用Git提交當前所有修改&#xff1a;git commit -am "Pre-upgrade backup"或直接復制項目文件夾 查看當前環境信息 flutter --version flutter doctor二、升級Flutter SDK到指定版本 方法1&#xff1a;通過版本管理工具升級&#x…

22、web前端開發之html5(三)

六. 離線存儲與緩存 在網絡環境不穩定或需要優化資源加載速度的場景下&#xff0c;離線存儲與緩存技術顯得尤為重要。HTML5引入了多種離線存儲和緩存機制&#xff0c;幫助開發者提升用戶體驗。本節將詳細介紹Application Cache、localStorage、sessionStorage以及IndexedDB等技…

用HTML和CSS生成炫光動畫卡片

這個效果結合了漸變、旋轉和懸浮效果的炫酷動畫示例&#xff0c;使用HTML和CSS實現。 一、效果 二、實現 代碼如下&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport&quo…

【嵌入式學習2】數組

目錄 ## 數組概念 ## 數組使用 ## 數組初始化 ## 數組名 ## 數組長度 ## 數組相關題目 1、找最大值 2、逆置 ## 數組和指針 指針加整數的含義 ## 指針數組 ## 數組名做函數參數 ## 函數參數傳遞數組 1、在函數內部 2. 在函數外部 ## 多維數組 使用下標訪問 #…

C++中的判斷與循環

一.if判斷語句 1.程序中的判斷&#xff1a; if (要執行的判斷&#xff0c;最后的返回值要是bool型的數據) {如果為真&#xff0c;要執行的代碼段; } #include"iostream" using namespace std;int main() {int ans;cin >> ans;if (ans > 1000) {cout <…

前端開發中生成網站的favicon.ico文件的軟件推薦及使用方法

日常網站開發中&#xff0c;我們經常需要生成網站的favicon.ico文件&#xff0c;今天我在這里來推薦幾個編輯.ico(也可將圖片格式轉化為.ico)圖片&#xff0c;而且免費的那軟件&#xff1a; GIMP&#xff1a;一個功能強大的開源圖像編輯軟件&#xff0c;支持多種文件格式&#…

淺談WebSocket-FLV

FLV是一種視頻數據封裝格式&#xff0c;這種封裝被標準通信協議HTTP-FLV和RTMP協議應用。 而WebSocket-FLV是一種非標的FLV封裝數據從后端發送到前端的一種方式。 在WebSocket的url請求中&#xff0c;包含了需要請求設備的視頻相關信息&#xff0c;在視頻數據到達時&#xff0c…

基于ADMM無窮范數檢測算法的MIMO通信系統信號檢測MATLAB仿真,對比ML,MMSE,ZF以及LAMA

目錄 1.算法運行效果圖預覽 2.算法運行軟件版本 3.部分核心程序 4.算法理論概述 4.1 ADMM算法 4.2 最大似然ML檢測算法 4.3 最小均方誤差&#xff08;MMSE&#xff09;檢測算法 4.4 迫零&#xff08;ZF&#xff09;檢測算法 4.5 OCD_MMSE 檢測算法 4.6 LAMA檢測算法 …

cocos creator 筆記-路邊花草

版本&#xff1a;3.8.5 實現目標&#xff1a;給3d道路生成路邊景觀花草 在場景下創建一個節點&#xff0c;我這里種植兩種花草模型&#xff0c;蘭花和菊花&#xff0c;所以分別在節點下另創建兩個節點&#xff0c;為了靜態合批。 1.將花草模型分別拖入場景中&#xff0c;制作…

R語言——循環

參考資料&#xff1a;學習R 在R中有三種循環&#xff1a;repeat、while和for。雖然向量化意味著我們可能并不需要大量使用它們&#xff0c;但在需要重復執行代碼時&#xff0c;它們是非常有用的。 1、重復循環 R中最容易掌握的循環是repeat。它所做的事情就是反復地執行代碼&a…

springboot使用阿里限流框架-sentinel

當前項目源碼 控制臺下載 啟動bin中的看板服務&#xff1a;賬號密碼:sentinel/sentinel 官方文檔地址 項目引入依賴 <!-- sentinel注解支持 --> <dependency><groupId>com.alibaba.csp</groupId><artifactId>sentinel-annotation-aspectj<…