vue3获取上个页面路由地址和名称
时间: 2024-10-15 19:06:45 浏览: 65
vue路由的配置和页面切换详解
在 Vue3 中,为了获取上一个页面的路由地址和名称,通常需要利用浏览器的历史记录 API 和Vuex或Vue Router 的导航守卫功能。这里提供一种常见的解决方案:
1. 使用 `vue-router` 的导航守卫:你可以设置全局的 `beforeRouteLeave` 守卫,在离开当前页面时检查并保存上一页的信息。例如:
```javascript
router.beforeEach((to, from, next) => {
// 在离开当前路由时,存储上一跳的目标路由信息
if (from.name) {
localStorage.setItem('previousPath', from.path);
localStorage.setItem('previousName', from.name);
}
// 继续正常导航流程
next();
});
```
2. 然后在其他组件中,你可以通过 `localStorage` 获取这些信息:
```javascript
export default {
created() {
const previousPath = localStorage.getItem('previousPath');
const previousName = localStorage.getItem('previousName');
// 检查是否有上一次的路由信息
if (previousPath && previousName) {
console.log('上一个页面路径:', previousPath);
console.log('上一个页面名称:', previousName);
} else {
console.log('未找到上一个页面信息');
}
}
};
```
请注意,这只是一个示例,实际应用中你需要处理可能出现的 `localStorage` 存储清除的情况。
阅读全文