Pagination.vue 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <template>
  2. <!-- 新闻详情页 页码 -->
  3. <div class="pagination">
  4. <el-pagination size="small" background layout="prev, pager, next" :total="40" class="mt-4" prev-text="上一页"
  5. next-text="下一页" @change="change" />
  6. </div>
  7. </template>
  8. <script setup>
  9. import { ElPagination } from 'element-plus'
  10. // 当前页码
  11. const emit = defineEmits(['sendData'])
  12. let page = useState("page", () => 1)
  13. let change = (value) => {
  14. // console.log(value);
  15. page.value = value
  16. console.log(page.value);
  17. const data = { value: page.value }
  18. // 触发自定义事件
  19. emit('sendData', data)
  20. }
  21. </script>
  22. <style lang="less" scoped>
  23. .pagination {
  24. width: 508px;
  25. height: 34px;
  26. margin: 0 auto;
  27. // 鼠标移入后字体颜色
  28. .el-pagination::v-deep :hover {
  29. color: #139609;
  30. }
  31. .el-pagination.is-background::v-deep .btn-next,
  32. .el-pagination.is-background::v-deep .btn-prev {
  33. width: 70px;
  34. height: 34px;
  35. margin: 0px 10px;
  36. border-radius: 4px;
  37. }
  38. .el-pagination.is-background::v-deep .el-pager li {
  39. margin: 0px 10px;
  40. width: 38px;
  41. height: 34px;
  42. border-radius: 4px;
  43. }
  44. .el-pagination.is-background::v-deep .btn-next.is-active,
  45. .el-pagination.is-background::v-deep .btn-prev.is-active,
  46. .el-pagination.is-background::v-deep .el-pager li.is-active {
  47. background-color: #028e21;
  48. color: #fff;
  49. }
  50. }
  51. </style>