不使用接口的 limit 控制分页的容量
1.html中v-for 此时的v-for对象并不是在后台获取的数组list,而是计算属性的函数名pageList
<div v-for="item in pageList" :key="item.id" >{{item.title}}</div>
2.添加el-pagination
<el-pagination
layout="prev, pager, next"
background
prev-text="上一页"
next-text="下一页"
:total= "listNumber"
:pager-count="5"
:page-size="9"
@current-change="handleCurrentChange"
>
total: 总条数,如果用后台传来的数据,最好使用数组的长度
pager-count:页码按钮的数量,当总页数超过该值时会折叠
page-size:每页显示条目个数,要和下面计算属性的数值相等
@current-change:当 currentPage 改变时会触发 ,后面的handleCurrentChange是一个方法 3.data中定义
data () {
return {
listNumber: 0,
loading: false,
otherDialogVisible: false,
pdfDoc: null,
pageNum: 1,
pageNumPending: null,
currentPage: 1,
list: []
}
}
4.方法
4.1 后台获取
async getList () {
this.loading = true
let params = {
type: 1
}
const res = await decision(params)
if (res.data.code === 1) {
this.list = res.data.data
console.log(this.list)
} else {
this.$message({type: 'success', message: res.data.msg})
}
this.listNumber = this.list.length
this.loading = false
}
4.2 定义handleCurrentChange方法
handleCurrentChange (val) {
this.currentPage = val
}
val:点击时的数值
this.currentPage:当前的页码
5.计算属性(最重要)
pageList () {
// 9为每页设置数量,ceil()向上取整
let pages = Math.ceil(this.list.length / 9) // pages=2,共两页
let newList = []
for (let i = 0; i < pages; i++) {
let sonList = []
// 9为每页设置数量,slice(start,end),返回一个新的数组,
// 包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。
sonList = this.list.slice(i * 9, i * 9 + 9)
// push() 方法可向数组newList的末尾添加一个或多个元素sonList,并返回新的长度。
newList.push(sonList)
}
return newList[this.currentPage - 1]
}
不使用接口的 limit 控制分页的容量的更多相关文章
- Django_rest_framework_渲染器/解析器/路由控制/分页
目录 渲染器 解析器 路由控制 分页 渲染器 简介 什么是渲染器 根据 用户请求URL 或 用户可接受的类型,筛选出合适的 渲染组件. 渲染器的作用 序列化.友好的展示数据 渲染器配置 首先要在set ...
- [Django REST framework - 自动生成接口文档、分页]
[Django REST framework - 自动生成接口文档.分页] 自动生成接口文档 # 后端人员写好接口,编写接口文档,给前端人员看,前端人员依照接口文档开发 # 公司里主流 -后端,使用w ...
- MyBatis(4):使用limit实现分页
用limit实现分页,首先要创建一个Maven项目,搭建好mybatis的实验环境,并且连接好数据库 代码 1,编写dao接口 UserMapper //查询全部用户实现分页 List<User ...
- C#开发微信门户及应用(42)--使用Autofac实现微信接口处理的控制反转处理
在很多情况下,我们利用IOC控制反转可以很方便实现一些接口的适配处理,可以在需要的时候切换不同的接口实现,使用这种方式在调用的时候,只需要知道相应的接口接口,具体调用哪个实现类,可以在配置文件中动态指 ...
- 八、子查询、limit及limit的分页
1.子查询 定义:select语句中嵌套select语句被称为子查询 select子句可能出现在select.from.where关键字后面,如下: A.将一个表的查询结果当做是过滤条件 B.将一个表 ...
- 使用Limit实现分页
limit语法 #语法 SELECT * FROM table LIMIT stratIndex,pageSize SELECT * FROM table LIMIT 5,10; // 检索记录行 6 ...
- MySQL的LIMIT与分页优化
在系统中需要进行分页操作的时候,我们通常会使用LIMIT加上偏移量的办法实现,同时加上合适的ORDER BY子句.如果有对应的索引,通常效率会不错,否则,MySQL需要做大量的文件排序操作. 一个非常 ...
- 【MySQL】过滤后的结果集较大,用LIMIT查询分页记录,查询效率不理想
> 参考的优秀文章 优化LIMIT分页--<高性能MySQL>(电子工业出版社) > 场景描述 遇到一个场景:查询排序后的结果集较大,我们采用分页显示,每页显示20条记录,但是 ...
- 16、使用limit offset 分页时,为什么越往后翻越慢?如何解决?
在mysql中limit可以实现快速分页,但是如果数据到了几百万时我们的limit必须优化才能有效的合理的实现分页了,否则可能卡死你的服务器哦. 当一个表数据有几百万的数据的时候成了问题! 如 * f ...
随机推荐
- CentOS 7 yum install cobbler2.8.3
安装前注意事项: 1.cobbler主机要为静态ip,否则和dhcpd服务冲突. 2.如果用虚拟机安装,client的内存请设置为2g以上,否则会报错. 3.kickstart文件中不要出现中文,大坑 ...
- layui 单选项 点击显示与隐藏
同一个页面有多个单选按钮:https://blog.csdn.net/haibo0668/article/details/86220767
- Kali Linux Xfce版美化虚拟机镜像
起因 这两天来学校把硬盘基本全部清空了,所以以前的虚拟机就需要重新安装了. Kali 一直用的是 xfce 版本,至于为什么用这个版本,是因为我感觉 gnome3 在虚拟机上表现欠佳.当然,默认的 g ...
- idea工具和激活码获取
1.下载最新的idea https://blog.csdn.net/mashuai720/article/details/79389314 2.获取激活码 最后一个有效,亲测 https://blog ...
- Linux 文件内容查看(cat、tac、nl 、more 、less、head、tail )
Linux系统中使用以下命令来查看文件的内容: cat: 由第一行开始显示文件内容tac :从最后一行开始显示,可以看出 tac 是 cat 的倒著写!nl: 显示的时候,顺道输出行号!more ...
- LINUX之根目录介绍、普通目录创建、删除、复制、移动、权限管理命令记录
(一)Linux 系统目录结构 登录系统后,在当前命令窗口下输入命令:ls / /bin:bin是Binary的缩写, 这个目录存放着最经常使用的命令. /boot:这里存放的是启动Linux时使用的 ...
- Django project troubleshootings
1. 当django project文件夹放到cgi-bin目录下面时会出现下面的错误: [Wed Jan 09 01:52:52.611690 2019] [core:notice] [pid 15 ...
- vue--js里跳转页面
我们知道在vue里进行页面跳转的话,我们使用<router-link>这个标签 那在构造函数里我们不能直接操纵DOM元素,我们又该如何进行页面跳转呢? 步骤1: 我们先在DOM里设置三个按 ...
- mybatis-generator 自动生成mapper以及实体类
研究了一下,感觉也不是特别方便,因为参数很多都是需要手动去配置的,如果在这个jar基础上在改造一下或许更方便一点. 具体实现代码如下: pom.xml <plugin> <group ...
- java - 策略模式、状态模式、卫语句,避免多重if-else(转)
前言 当代码中出现多重if-else语句或者switch语句时.弊端之一:如果这样的代码出现在多处,那么一旦出现需求变更,就需要把所有地方的if-else或者switch代码进行更改,要是遗漏了某一处 ...