vue3 页面A跳到页面B,页面B怎么获取页面A的路由,完整代码怎么写
时间: 2024-09-08 16:01:00 浏览: 113
Vue页面跳转动画效果的实现方法
在Vue 3中,如果你想要在页面B获取页面A的路由信息,可以通过以下几种方式实现:
1. 使用Vue Router的`$route`对象的`$router.beforeEach`全局前置守卫,可以在路由跳转前获取上一个路由的信息。
2. 使用`$route`对象的`query`或`params`来传递信息,这种方式更适用于需要在页面间传递参数的场景。
下面是一个基本的代码示例:
**页面A组件**:
```vue
<template>
<div>
<router-link :to="{ path: '/page-b', query: { from: $route.path } }">跳转到页面B</router-link>
</div>
</template>
<script>
export default {
name: 'PageA',
};
</script>
```
**页面B组件**:
```vue
<template>
<div>
页面A的路由是: {{ fromRoute }}
</div>
</template>
<script>
import { useRoute } from 'vue-router';
export default {
name: 'PageB',
setup() {
const route = useRoute();
const fromRoute = route.query.from;
return {
fromRoute,
};
},
};
</script>
```
在上面的代码中,我们在页面A组件中使用了`router-link`组件,并通过`:to`属性中的`query`对象传递了当前页面A的路由地址。然后在页面B组件中,我们通过`useRoute`函数获取了当前路由对象,然后通过`route.query.from`访问了传递过来的查询参数。
阅读全文