vue如何使用elementui分页器,前端分页器

这里是展示的表格,将后端的数据以表格的形式展示出来
<el-table
        :data="tableDatas"
        style="width: 500px">
    <el-table-column style="height: 100px"
                     prop="username"
                     label="职工号"
                     width="120">
    </el-table-column>
    <el-table-column
            prop="name"
            label="姓名"
            width="120">
    </el-table-column>
    <el-table-column
            prop="part_name"
            label="部门">
    </el-table-column>
    <el-table-column
            prop="email"
            label="联系方式">
    </el-table-column>
</el-table>
这个是分页器,使用小型的分页器
<div class="pagenation">
    <el-pagination
            small
            layout="prev, pager, next"
            :total="total"
            :page-size="page_size"
            @prev-click="prevfun"
            @next-click="nextfun"
            @current-change="currentchange"
    >
    </el-pagination>
</div>

1、total 代表的是总的数据条数

2、page_size代表的是每页展示的数据条数

显示到页面的页码 : < 1 2 3 4 5...10> total/page-size = 10页,页码是1-10,

3、small是小型页码,加上该参数即可

4、后面三个是事件:

        prev-click 事件的点击上一页时触发函数prevfun

        next-click事件点击下一页时触发函数nextfun

current-change事件,当前页发生变化就会触发。

事件处理上

变量设置

data() {
    return {    
        //用来接收后端传递过来的用户信息
        tableDatas: [],
        //需要展示的数据的总数
        total: 5, //先设置给初始值,只给空字符串''会报typeerror
        //下一页 ,可以不设置在get_data中也就不需要赋值
        next: '',
        //上一页,可不设置,在get_data中也就不需要赋值
        prev: '',
        //每页总数
        page_size: 1,//先设置给初始值,只给空字符串''会报typeerror

                }

             }

函数设置

初始化操作

mounted() {   
    //获取用户信息的请求,页面加载后,就从后端拿到数据,将数据展示到前端
    this.get_data()
}

点击页码、下一页、上一页触发相关的函数,实现获取指定页码的数据

methods: {
    //从后端获取到用户的数据的函数,封装陈一个函数跨域给其他的函数使用
    get_data(page=1) {
        this.$axios({
            method: 'get',
            url: this.$settings.base_url + '/user/showuser/?page='+page
        }).then(res => {
            //获取到用户信息,赋值给变量,从后端拿到数据
            this.tableDatas = res.data.results //要展示的数据
            this.prev = res.data.links.previous //这个可以不用
            this.next = res.data.links.next //这个也可以不用
            this.total = res.data.count
            this.page_size = res.data.page_size
        }).catch(error => {
            console.log(error)
        })
    },
    prevfun(value) {
        //value拿到的当前的页码,点击上一页触发该函数
        this.get_data(value)
    },
    nextfun(value) {
        //value拿到页码,点击下一页触发该函数
       this.get_data(value)
    },
    currentchange(value) {
        //页码发生变化会触发,这个用来触发点击页码时触发的。
        this.get_data(value)
    },
},

效果图:

 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ElementUI 是一款基于 Vue.js 的开源组件库,其中包含了一些常用的 UI 组件,包括分页。在 ElementUI 中,分页组件可以帮助我们实现数据的分页展示和切换。通过设置不同的属性,我们可以自定义分页的样式和行为。 要使用 ElementUI分页组件,首先确保已经正确安装和引入了 ElementUI。然后,可以按照以下步骤来添加分页: 1. 在需要使用分页Vue 组件中,首先导入 ElementUI分页组件: ```javascript import { Pagination } from 'element-ui'; ``` 2. 在 Vue 组件的 `components` 属性中注册分页组件: ```javascript components: { 'el-pagination': Pagination, }, ``` 3. 在 Vue 组件的模板中使用分页组件,并绑定相应的属性: ```html <el-pagination :total="total" // 数据的总条数 :page-size="pageSize" // 每页显示的条数 :current-page="currentPage" // 当前页码 @current-change="handleCurrentChange" // 页码改变时触发的事件 ></el-pagination> ``` 在上面的代码中,`total` 表示数据的总条数,`pageSize` 表示每页显示的条数,`currentPage` 表示当前页码。`@current-change` 是一个事件监听,用于在页码改变时执行相应的逻辑操作。你可以根据自己的需求来修改这些属性和事件。 需要注意的是,上述代码只是一个简单的示例,实际使用时可能需要根据具体的业务逻辑进行相应的处理。 希望以上信息对你有所帮助!如果你还有其他问题,请继续提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值