微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

elementUI的表格和分页器混合使用

使用elementUI的时候,想把它的表格组件和分页器组件组合使用,然后就去研究了一下。主要实现代码如下:

<template>
  <div>
  <el-table
    :data="tableData.slice((currpage - 1) * pagesize, currpage * pagesize)"
    style="width: 100%"
    :row-class-name="tableRowClassName">
    <el-table-column
      prop="date"
      label="日期"
      width="180">
    </el-table-column>
    <el-table-column
      prop="name"
      label="姓名"
      width="180">
    </el-table-column>
    <el-table-column
      prop="address"
      label="地址">
    </el-table-column>
  </el-table>

  <el-pagination
  background
  layout="prev, pager, next, jumper"
  @size-change = 'handleSizeChange'
  @current-change='handleCurrentChange'
  :current-page='currpage'
  :page-size='pagesize'
  :total="tableData.length">

</el-pagination>

  </div>
</template>
<script>
  import axios from 'axios'
  export default {
    methods: {
      tableRowClassName({row, rowIndex}) {
        if (rowIndex === 1) {
          return 'warning-row';
        } else if (rowIndex === 3) {
          return 'success-row';
        }
        return '';
      },
      handleSizeChange(val) {
        this.pagesize = val
      },
      handleCurrentChange(val) {
        this.currpage = val
      }
    },
    data() {
      return {
        tableData: [],
        curentPage1: 1, //认最开始是第几页
        pagesize: 5, //每页数据条数
        currpage: 1, //认开始页面
      }
    },
    created() {
      axios.get('/api/testmock')
      .then(res => {
        this.tableData = res.data.arr.list
      })
    },
  }
</script>

<style scoped>
  .el-table .warning-row {
    background: oldlace;
  }

  .el-table .success-row {
    background: #f0f9eb;
  }
</style>

其中接口是用的mockjs写的模拟接口,代码如下:

import Mock from 'mockjs'

Mock.mock('/api/testmock', 'get', () => {
  return {
    status: 200,
    arr: Mock.mock({
      'list|20-50': [
        {
          name: '@cname()',
          address: '@city(true)',
          date: '@date()'
        }
      ]
    })
  }
})

最终显示效果如下:


有什么问题可以评论留言~

5i46M9.md.jpg

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐