vue修改当前页面query参数

最近在项目中手写分页器(为什么手写,因为对分页器样式外观要求比较严苛),遇到一个需求,就是我们在点击分页的时候,再进入详情,之后回退希望能够回到之前的页码值。

解决这个需求,个人总结了两种方法。

1:对标百度,不知道大家有没有发现 百度在进入详情页采取的方式是新开一个页面,这样我们回退到列表页的时候,页码值保持不变。

这是一种可取的简单的方式,实现思路为:

生成一个a链接,然后指定a的href属性和target属性,再模拟a的点击事件即可!

2:但是有时候我们的甲方不想新开页面怎么办,这里就可以通过修改vuequery参数来实现。

2-1:我们在进入这个列表页的时候,给一个初始默认值,例如:page=1

 

不用担心页面路由问题,只要问号前面的路由是对的,不影响页面跳转

2-2:我们需要在分页器事件的时候改变浏览器中的query

 

其中的currentPage是我们当前的页码值,我们就是将它赋值给我们的query里面的参数

从而实现点击分页器,就能动态的改变路径中的值。


        const query=JSON.parse(JSON.stringify(this.$route.query))
        query.page=this.currentPage//你的分页器页码值变量
        this.$router.push({ path: this.$route.path, query })

 

这样我们在点击进入详情页后,回退依旧是当前的页码值,之后大家判断调接口就好了!

最后谢谢大家,如果能帮助到你,希望你回来帮我点个赞!

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,您的问题是关于代码生成和动态路由的实现,是吗? 首先,您需要编写一个学生信息编辑的Vue页面,该页面需要通过路由参数获取学生ID,并通过该ID请求或筛选当前学生的信息。可以按照以下步骤进行操作: 1. 在Vue项目中创建一个名为“StudentEdit”的组件,该组件用于显示学生信息的编辑页面。 2. 在该组件中,使用$route来获取路由参数,如下所示: ``` <template> <div> <h1>编辑学生信息</h1> <form> <div> <label>学生ID:</label> <span>{{ $route.params.id }}</span> </div> <!-- 其他表单项 --> </form> </div> </template> ``` 3. 使用该学生ID来请求或筛选当前学生的信息,并将其填充到表单中。 4. 在src/router/index.js中配置路由,如下所示: ``` import Vue from 'vue' import Router from 'vue-router' import StudentEdit from '@/components/StudentEdit' Vue.use(Router) export default new Router({ routes: [ { path: '/student/:id', name: 'StudentEdit', component: StudentEdit } ] }) ``` 5. 在主页面中,使用Vue-viewer组件来显示学生信息的新增/修改页面,并使用动态路由来传递学生ID作为参数,如下所示: ``` <template> <div> <h1>学生信息</h1> <router-link :to="{ name: 'StudentEdit', params: { id: student.id } }">编辑</router-link> <!-- 使用Vue-viewer来显示学生信息 --> </div> </template> ``` 其中,使用了params方式传递学生ID参数。您还可以使用query方式传递参数,如下所示: ``` <template> <div> <h1>学生信息</h1> <router-link :to="{ name: 'StudentEdit', query: { id: student.id } }">编辑</router-link> <!-- 使用Vue-viewer来显示学生信息 --> </div> </template> ``` 然后,在StudentEdit组件中,您可以使用$route来获取学生ID参数,如下所示: ``` <template> <div> <h1>编辑学生信息</h1> <form> <div> <label>学生ID:</label> <span>{{ $route.params.id }}</span> </div> <!-- 其他表单项 --> </form> </div> </template> <script> export default { created() { // 使用$route来获取学生ID参数 const id = this.$route.params.id // 请求或筛选当前学生的信息,并将其填充到表单中 } } </script> ``` 以上就是实现学生信息添加、编辑页面的显示,并使用动态路由Vue-viewer中显示学生信息的步骤。希望能够帮到您!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值