1. 简介
Vue和Element-UI是一对非常常用的前端框架,分别用于构建前端应用和UI界面。在实际的开发中,我们经常需要构建一些数据表格来展示数据,因此掌握如何使用Vue和Element-UI来实现数据表格的分页显示是非常重要的。
2. 前置条件
在开始阅读本文前,需要先了解Vue和Element-UI的基本使用方法,如果您还不熟悉这两个框架,可以通过以下链接进入相关学习文档:
3. 实现步骤
3.1 数据准备
首先需要准备一些要展示的数据。在这里我们先使用静态数据,可以在Vue实例中定义一个数组来存储这些数据:
data() {
return {
tableData: [
{ name: '张三', age: 22, gender: '男', address: '北京市海淀区' },
{ name: '李四', age: 25, gender: '女', address: '上海市浦东新区' },
{ name: '王五', age: 18, gender: '男', address: '深圳市福田区' },
{ name: '赵六', age: 30, gender: '女', address: '广州市天河区'},
{ name: '钱七', age: 24, gender: '男', address: '成都市高新区' }
],
currentPage: 1, // 当前页码
pageSize: 2, // 每页显示的数据条数
}
},
在这里定义了一个名为tableData的数组,包含了五条数据,同时定义了当前页码和每页显示的数据条目数。这里我们默认每页显示两条数据。
3.2 构建表格
接下来需要在页面中构建一个表格来展示这些数据。Element-UI提供了非常方便的el-table组件,我们可以直接使用这个组件来构建表格。
首先,在模板中引入el-table组件:
<template>
<div class="container">
<el-table :data="tableData">
<el-table-column prop="name" label="姓名" ></el-table-column>
<el-table-column prop="age" label="年龄" ></el-table-column>
<el-table-column prop="gender" label="性别" ></el-table-column>
<el-table-column prop="address" label="地址" ></el-table-column>
</el-table>
</div>
</template>
在这个表格中,我们使用了四个el-table-column组件来定义表格的列,分别对应姓名、年龄、性别和地址四个属性。prop属性可以指定要展示的数据的属性名, label属性可以指定表格头部的列名。此时运行应用,我们可以看到一个简单的表格已经呈现在页面上了。
3.3 实现分页
接下来需要实现分页功能。Element-UI同样提供了一个方便的el-pagination组件来实现分页功能。
首先,在模板中引入el-pagination组件:
<template>
...
<el-pagination v-model="currentPage" :page-size="pageSize" :total="tableData.length"></el-pagination>
</template>
在这个el-pagination组件中,我们指定了v-model属性,这个属性将在当前页码改变时自动更新其值。pageSize属性指定了每页显示的数据条数,total属性指定了要展示的总数据条数。此时运行应用,我们已经能看到分页组件出现在页面上了,并且在切换页码时,表格中的数据也随之改变。
3.4 完整代码
至此,我们已经完成了使用Vue和Element-UI实现数据表格的分页显示的全部过程,以下是完整的Vue示例代码:
<template>
<div class="container">
<el-table :data="tableData">
<el-table-column prop="name" label="姓名" ></el-table-column>
<el-table-column prop="age" label="年龄" ></el-table-column>
<el-table-column prop="gender" label="性别" ></el-table-column>
<el-table-column prop="address" label="地址" ></el-table-column>
</el-table>
<el-pagination v-model="currentPage" :page-size="pageSize" :total="tableData.length"></el-pagination>
</div>
</template>
<script>
export default {
data() {
return {
tableData: [
{ name: '张三', age: 22, gender: '男', address: '北京市海淀区' },
{ name: '李四', age: 25, gender: '女', address: '上海市浦东新区' },
{ name: '王五', age: 18, gender: '男', address: '深圳市福田区' },
{ name: '赵六', age: 30, gender: '女', address: '广州市天河区'},
{ name: '钱七', age: 24, gender: '男', address: '成都市高新区' }
],
currentPage: 1, // 当前页码
pageSize: 2, // 每页显示的数据条数
}
},
}
</script>
4. 总结
本文介绍了使用Vue和Element-UI实现数据表格的分页显示的过程,并提供了完整的Vue示例代码。希望通过本文的学习,您能对如何使用Vue和Element-UI构建数据表格有更深入的了解。