vue3 router.back() 携带参数
时间: 2023-08-30 19:09:21 浏览: 568
你可以使用 `router.go(-1)` 实现返回上一页,并且在路由跳转时通过 `query` 或 `params` 传递参数。例如:
```javascript
// 在当前路由中跳转到下一页,并携带参数
this.$router.push({ path: '/next-page', query: { key: value } })
// 返回上一页,并携带参数
this.$router.go(-1, { query: { key: value } })
```
在被返回的页面中,你可以通过 `$route` 对象获取传递的参数。例如:
```javascript
// 获取 query 参数
const queryParam = this.$route.query.key
// 获取 params 参数
const paramsParam = this.$route.params.key
```
其中,`query` 适用于传递字符串类型的参数,而 `params` 适用于传递数字或字符类型的参数。
相关问题
vue3 router.back()带参数
在 Vue3 中,使用 `router.back()` 返回上一个页面时不能直接带参数。但你可以在当前页面中使用 `router.push()` 传递参数,然后在上一个页面中通过 `route.query` 获取参数。
例如,在当前页面中使用以下代码跳转到上一个页面:
```
router.push({ path: router.history.current.fullPath, query: { param: 'value' }})
```
然后在上一个页面中使用以下代码获取参数:
```
this.$route.query.param
```
注意,`router.push()` 会增加一条新的历史记录,如果你希望在返回上一个页面时直接带参数,可以考虑使用 `router.replace()` 替换当前页面的历史记录。
vue3 通过click事件跳转router.push携带参数
以下是通过click事件跳转router.push携带参数的Vue3示例代码:
```vue
<template>
<button @click="redirectToIndex(1)">跳转到Index页面</button>
</template>
<script>
import { useRouter } from 'vue-router';
export default {
methods: {
redirectToIndex(index) {
const router = useRouter();
router.push({
name: 'Index',
params: { type: index }
});
}
}
}
</script>
```
在上述代码中,我们首先使用`import { useRouter } from 'vue-router'`导入`useRouter`函数,该函数用于获取路由实例。然后,在`redirectToIndex`方法中,我们通过调用`router.push`方法来进行路由跳转,并通过`params`属性传递参数。
请注意,上述代码中的`name`属性应与路由配置中的名称相对应。另外,确保已正确配置路由和组件。