<template> <el-pagination :current-page="currentPage" :page-sizes="[10, 20, 50, 100]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="newtotalSize" @size-change="handleSizeChange" @current-change="handleCurrentChange" > </el-pagination> </template> <script> export default { data() { return { newtotalSize: this.totalSize, newpageSize: this.pageSize, currentPage: 1 // 当前页 } }, watch: { totalSize(n, o) { this.newtotalSize = n } }, props: { // 每页展示多少条数据 pageSize: { type: Number, default: 10 }, // 数据总条数 totalSize: { type: Number, default: 0 } }, methods: { // pageSize 改变时会触发 handleSizeChange(val) { this.newpageSize = val this.$emit('parentMethod', this.currentPage, val) }, // currentPage 改变时会触发 handleCurrentChange(val) { this.currentPage = val this.$emit('parentMethod', val, this.newpageSize) } } } </script> <style> </style>