Skip to content

Commit 37a31bb

Browse files
authored
Merge pull request dwqs#15 from zeratul1/dev
fix: page count 4 is missing while page size is 5
2 parents 2d6431e + be42d9e commit 37a31bb

File tree

1 file changed

+12
-10
lines changed

1 file changed

+12
-10
lines changed

src/components/table.vue

+12-10
Original file line numberDiff line numberDiff line change
@@ -535,11 +535,9 @@
535535
}
536536
537537
this.curPage = parseInt(page, 10);
538-
this.$emit('page-change', parseInt(page, 10));
538+
this.$emit('page-change', this.curPage);
539539
540-
if (this.totalPage > 7) {
541-
this.getRenderPages();
542-
}
540+
this.getRenderPages();
543541
},
544542
545543
computedTotalPage () {
@@ -555,14 +553,16 @@
555553
getRenderPages () {
556554
const pages = [];
557555
const middlePage = this.curPage;
556+
const restPage = this.totalPage - middlePage;
558557
559-
let start = (middlePage - this.pageDiff) > 1 ? middlePage - this.pageDiff : 1;
560-
let end = (middlePage + this.pageDiff) < this.totalPage ? middlePage + this.pageDiff : this.totalPage;
558+
let start = middlePage - this.pageDiff;
559+
let end = middlePage + this.pageDiff;
561560
562-
start = ((this.totalPage - middlePage) < 3 && this.totalPage - middlePage >= 0) ? (this.totalPage - 5) : start;
563-
end = (end <= 6 && this.totalPage >= 6) ? 6 : end;
561+
if (restPage < 3 && restPage >= 0) start = this.totalPage - 5;
562+
if (end <= 5 && this.totalPage >= 5) end = 5;
564563
565-
start = start > 0 ? start : 1;
564+
if (start < 1) start = 1;
565+
if (end > this.totalPage) end = this.totalPage;
566566
567567
for (let i = start; i <= end; i++) {
568568
pages.push({
@@ -580,7 +580,9 @@
580580
if (end !== this.totalPage) {
581581
pages.push({
582582
page: this.totalPage,
583-
text: (this.totalPage - end > 1 && this.totalPage > 7) ? `...${this.totalPage}` : this.totalPage
583+
text: (this.totalPage - end > 1 && this.totalPage > 6)
584+
? `...${this.totalPage}`
585+
: this.totalPage
584586
});
585587
}
586588

0 commit comments

Comments
 (0)