vue如何带着id跳转到新页面
时间: 2023-06-25 14:06:29 浏览: 172
可以使用Vue Router的编程式导航进行跳转。具体步骤如下:
1. 在Vue组件中引入Vue Router:`import router from '@/router'`。
2. 在方法中使用`router.push({ path: '/newPage', params: { id: '123' } })`进行跳转。其中`path`是要跳转到的页面路径,`params`是要传递的参数。
3. 在新页面中,可以通过`this.$route.params.id`来获取传递过来的参数。
示例代码如下:
```
<template>
<div>
<button @click="goToNewPage">跳转到新页面</button>
</div>
</template>
<script>
import router from '@/router'
export default {
methods: {
goToNewPage() {
router.push({ path: '/newPage', params: { id: '123' } })
}
}
}
</script>
```
新页面中可以这样获取参数:
```
<template>
<div>
<p>参数id: {{ $route.params.id }}</p>
</div>
</template>
```
相关问题
vue带参数跳转新页面
Vue.js 中,如果你想从当前页面带参数跳转到新的页面(通常是路由跳转),你可以使用 Vue Router 这个库。Vue Router 提供了 `this.$router.push` 或者 `this.$router.go` 方法来导航到指定的路由。
例如,假设你有一个动态路由,路径是 `/detail/:id`,你可以这样做:
```javascript
// 在组件内部
this.$router.push({ name: 'detail', params: { id: '某个值' } });
// 或者直接传入路径字符串,如果是SPA应用
this.$router.push('/detail/' + '某个值');
// 如果你想使用动态参数
let id = '123'; // 这里替换成实际的参数值
this.$router.push(`/detail/${id}`);
```
这会将用户带到 `/detail/某个值` 的页面,并且可以获取到通过 `:id` 映射的参数值。
vue router-link跳转打开新页面
在Vue中,如果你想要使用router-link来跳转并打开一个新页面,你可以使用以下方法。
1. 使用router-link指令进行跳转。然而,需要注意的是,在Vue 2.0版本之后,官方文档中已经说明了v-link指令被<router-link>组件指令替代,并且<router-link>组件不支持target="_blank"属性。所以你不能直接在<router-link>上设置target="_blank"来实现新页面打开 。
2. 使用编程式导航。在某些情况下,你可能需要在单击事件或函数中进行页面跳转。你可以借助router的示例方法来实现。常用的方法是通过this.$router.push和this.$router.go来进行页面跳转。然而需要注意的是,在Vue 2.0版本之后,这种方式也不再支持新页面打开的属性。相反,你可以使用this.$router.resolve方法来生成目标路由的URL,并使用window.open来打开新页面。以下是一个示例代码:
```javascript
seeShare() {
let routeUrl = this.$router.resolve({ path: "/share", query: {id:96} });
window.open(routeUrl.href, '_blank');
}
```
以上就是在Vue中使用router-link跳转并打开新页面的方法。你可以根据你的具体需求选择合适的方法来实现页面跳转。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [vue-router跳转时打开新页面的两种方法](https://download.csdn.net/download/weixin_38592332/13586213)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *2* [vue router 跳转时打开新页面的示例方法](https://download.csdn.net/download/weixin_38678498/13979866)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *3* [在vue项目中如何实现跳转到一个新页面](https://blog.csdn.net/qq_38637619/article/details/119669019)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
[ .reference_list ]
阅读全文