vue分页插件的思考

有这样一个需求,页面效果如下:


需求如下:

  1. 查询:按条件查询,并默认分页为第一页
  2. 分页:分页操作是在当前查询结果基础上进行的
  3. 在查询,分页操作后,刷新页面应保持查询条件,页数,和结果
技术方案:

采用vue组件和vue-router
页面分为两个组件,分页是一个组件,其他的整体是一个;
路由分了两个,一个根路由,一个查询/分页路由;

const routes = [ { path: '/', name: 'root', component: agent }, { path: '/query/:id/:name/:cityId?/:page', name: 'query', component: agent }, ];

问题

页面刷新要保持页数,就要将page传递到分页组件中来初始化,如下:

  props:{
    currentOut: {
        type: Number,
        default: 1
      }
  }`
  
  // 页面刷新时需要保存当前所在的页面
  data() {
    return {
      current: this.currentOut
    };
  },

另外,页面中除了点击分页数字进行翻页外,其他操作也会变相进行分页操做,这时问题就出现了,满足这个需求我一开始想到如下操作,这也是vue官方推荐的方法单向数据流

  computed: {
    'current' : function () {
       return this.currentOut;
    }
  }

但是在一个组件中,datacomputed中不能有重名的变量,如何是好?

方法:
不在computed中监听current变化,而是在watch中监听currentOut的变化

  watch{
    'currentOut': function (newValue) {
        this.current = newValue;
    }
  }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 这篇笔记主要包含 Vue 2 不同于 Vue 1 或者特有的内容,还有我对于 Vue 1.0 印象不深的内容。关于...
    云之外阅读 5,180评论 0 29
  • 转载 :OpenDiggawesome-github-vue 是由OpenDigg整理并维护的Vue相关开源项目库...
    果汁密码阅读 23,411评论 8 124
  • 最近写大作文,碰到一个题目,与水有关,百思不得解,完全不知道要写什么,跑去问当语文老师的妈妈,然后她问了我一句,你...
    sehunnee阅读 243评论 0 0
  • Hey,付小姐,好久不见。我想,你一切安好。 去掉中间可以忽略不计的一到两个小时的见面时间,也有三年未见了。寒假的...
    何小盒阅读 467评论 0 4
  • 我不知道有多少人小时候玩过这种玩具,但我觉得这是一款值得推荐的好东西。 经典的儿时回忆玩具,里面有着奇特万幻的图像...
    南雅妈妈阅读 492评论 0 0

友情链接更多精彩内容