mirror of https://github.com/ElemeFE/element
Pagination: handle NaN on props (#10623)
* Pagination: handle pageSize NaN * Pagination: handle currentPage NaNpull/10628/head
parent
6f4f57172b
commit
79325390e2
|
@ -375,11 +375,13 @@ export default {
|
|||
pageSize: {
|
||||
immediate: true,
|
||||
handler(val) {
|
||||
this.internalPageSize = val;
|
||||
this.internalPageSize = isNaN(val) ? 10 : val;
|
||||
}
|
||||
},
|
||||
|
||||
internalCurrentPage(newVal, oldVal) {
|
||||
internalCurrentPage: {
|
||||
immediate: true,
|
||||
handler(newVal, oldVal) {
|
||||
newVal = parseInt(newVal, 10);
|
||||
|
||||
/* istanbul ignore if */
|
||||
|
@ -397,6 +399,7 @@ export default {
|
|||
} else {
|
||||
this.$emit('update:currentPage', newVal);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
internalPageCount(newVal) {
|
||||
|
|
|
@ -82,6 +82,16 @@ describe('Pagination', () => {
|
|||
expect(vm.$el.querySelectorAll('li.number')).to.length(4);
|
||||
});
|
||||
|
||||
it('pageSize: NaN', () => {
|
||||
vm = createTest(Pagination, {
|
||||
pageSize: NaN,
|
||||
total: 100
|
||||
});
|
||||
|
||||
const pagers = vm.$el.querySelectorAll('li.number');
|
||||
expect(pagers).to.length(7);
|
||||
});
|
||||
|
||||
it('pageCount', () => {
|
||||
const vm = createTest(Pagination, {
|
||||
pageSize: 25,
|
||||
|
@ -119,6 +129,17 @@ describe('Pagination', () => {
|
|||
expect(vm.$el.querySelector('li.number.active')).to.have.property('textContent').to.equal('3');
|
||||
});
|
||||
|
||||
it('currentPage: NaN', () => {
|
||||
vm = createTest(Pagination, {
|
||||
pageSize: 20,
|
||||
total: 200,
|
||||
currentPage: NaN
|
||||
});
|
||||
|
||||
expect(vm.$el.querySelector('li.number.active')).to.have.property('textContent').to.equal('1');
|
||||
expect(vm.$el.querySelectorAll('li.number')).to.length(7);
|
||||
});
|
||||
|
||||
it('set currentPage & total', (done) => {
|
||||
vm = createVue({
|
||||
template: `
|
||||
|
|
Loading…
Reference in New Issue