|
|
@ -1,6 +1,7 @@
|
|
|
|
<template>
|
|
|
|
<template>
|
|
|
|
<div :class="{ 'hidden': hidden }" class="pagination-container">
|
|
|
|
<div :class="{ 'hidden': hidden }" class="pagination-container">
|
|
|
|
<el-pagination
|
|
|
|
<el-pagination
|
|
|
|
|
|
|
|
v-if="pageShow"
|
|
|
|
:background="background"
|
|
|
|
:background="background"
|
|
|
|
v-model:current-page="currentPage"
|
|
|
|
v-model:current-page="currentPage"
|
|
|
|
v-model:page-size="pageSize"
|
|
|
|
v-model:page-size="pageSize"
|
|
|
@ -17,6 +18,8 @@
|
|
|
|
<script setup>
|
|
|
|
<script setup>
|
|
|
|
import { scrollTo } from '@/utils/scroll-to'
|
|
|
|
import { scrollTo } from '@/utils/scroll-to'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const pageShow = ref(true);
|
|
|
|
|
|
|
|
|
|
|
|
const props = defineProps({
|
|
|
|
const props = defineProps({
|
|
|
|
total: {
|
|
|
|
total: {
|
|
|
|
required: true,
|
|
|
|
required: true,
|
|
|
@ -77,6 +80,12 @@ const pageSize = computed({
|
|
|
|
}
|
|
|
|
}
|
|
|
|
})
|
|
|
|
})
|
|
|
|
function handleSizeChange(val) {
|
|
|
|
function handleSizeChange(val) {
|
|
|
|
|
|
|
|
if (currentPage.value * val > props.total) {
|
|
|
|
|
|
|
|
pageShow.value = false;
|
|
|
|
|
|
|
|
nextTick(() => {
|
|
|
|
|
|
|
|
pageShow.value = true
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
}
|
|
|
|
emit('pagination', { page: currentPage.value, limit: val })
|
|
|
|
emit('pagination', { page: currentPage.value, limit: val })
|
|
|
|
if (props.autoScroll) {
|
|
|
|
if (props.autoScroll) {
|
|
|
|
scrollTo(0, 800)
|
|
|
|
scrollTo(0, 800)
|
|
|
|