this.$router.push({ path: "/goodsdetails", query: { id } });通过这种方式怎么在另一个页面那到传入的id
时间: 2024-02-20 20:56:50 浏览: 55
通过 `$router.push` 方法传递参数的方式,参数会被作为查询参数(query parameters)传递。在接收参数的页面中,你可以通过 `$route.query` 对象获取传递过来的参数。
例如,在 `/goodsdetails` 页面中,你可以使用以下方法获取传递过来的 `id` 参数:
```javascript
<template>
<div>
<h1>Goods Details: {{ goodsId }}</h1>
</div>
</template>
<script>
export default {
computed: {
goodsId() {
return this.$route.query.id
}
}
}
</script>
```
在这个例子中,我们使用了计算属性 `goodsId` 来获取传入的 `id` 参数,并在模板中显示出来。注意,这里我们使用的是 `$route.query.id` 而不是 `$route.params.id`,因为这里传递的参数是作为查询参数传递的,而不是路由参数。
相关问题
versionList(scope) { this.$router.push({ // path: "deploy/deployImage/VersionList", // query: { // id: scope.row.id, // imageId: scope.row.id, // name: scope.row.name // } name: "versionList", params: { id: scope.row.id, imageId: scope.row.id, name: scope.row.name, tagsCount: scope.row.tagsCount } }) 刷新页面后丢失参数
在Vue Router中,刷新页面会导致之前的参数丢失,因为刷新会重新加载整个应用,所有状态和数据都会被重置。
如果你想在刷新页面后保留参数,可以考虑以下几种方法:
1. 使用浏览器的URL参数:将需要传递的参数添加到URL中,通过查询字符串的形式进行传递。在页面加载完成后,你可以通过解析URL参数来获取这些参数值。在路由组件的`created`生命周期钩子中,可以使用`this.$route.query`来获取URL参数。
2. 使用本地存储:在页面组件中使用`localStorage`或`sessionStorage`将参数存储起来,在页面加载时再从本地存储中读取参数值。在路由组件的`created`生命周期钩子中,可以读取本地存储中的参数值。
3. 使用VueX进行状态管理:将参数存储在VueX的状态管理中,这样即使刷新页面,参数也能够保留。在路由组件中,可以通过访问VueX的状态来获取参数值。
需要注意的是,以上方法都需要在页面加载后进行相应的处理来获取之前的参数。因为刷新页面时无法直接携带参数,所以需要在页面加载后进行相应的处理来获取之前的参数。
nextButton(){ this.$store.dispatch("delView", this.$route); this.$router.push({ path: `/interface`, query: { caseNo:this.querypath2.caseNo, externalContractNbr:this.querypath2.externalContractNbr, activeName:this.querypath2.activeName, orgid:this.querypath2.orgid, writeoffFlag:this.querypath2.writeoffFlag } }); },
这段代码看起来是一个 Vue.js 的方法,它的作用是点击“下一步”按钮时执行一些操作。具体来说,它通过 Vuex 的 dispatch 方法调用了一个名为 delView 的 action,并将当前的路由对象作为参数传递给它。然后它使用 $router.push 方法将页面跳转到路径为 "/interface" 的页面,并将一些参数以 query 的形式传递给它。这些参数包括 caseNo、externalContractNbr、activeName、orgid 和 writeoffFlag。这段代码中可能还有其他相关的代码,但是我只能看到这部分。
阅读全文