HTML代碼:(重點關注el-table中:data資料的綁定)
el-pagination中:
layout代表元件布局,子元件名用逗号分隔
屬性: total代表總條目數
事件: current-change用于監聽頁數改變,而内容也發生改變
<template>
<div>
<el-table
ref="multipleTable"
:data="tableData.slice((currentPage-1)*pagesize,currentPage*pagesize)"
tooltip-effect="dark"
style="width: 100%"
@selection-change="handleSelectionChange">
<el-table-column
type="selection"
width="55">
</el-table-column>
<el-table-column
prop="name"
label="姓名"
width="120">
</el-table-column>
<el-table-column
prop="age"
label="年齡"
width="120">
</el-table-column>
<el-table-column
prop="sex"
label="性别"
width="120">
</el-table-column>
<el-table-column
prop="department"
label="部門"
width="150">
</el-table-column>
<el-table-column
prop="floor"
label="樓層"
width="120">
</el-table-column>
<el-table-column
prop="area"
label="區域"
width="120">
</el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
<el-button
size="mini"
@click="handleEdit(scope.$index, scope.row)">修改
</el-button>
<el-button
size="mini"
type="danger"
@click="handleDelete(scope.$index, scope.row)">删除
</el-button>
</template>
</el-table-column>
</el-table>
<div style="text-align: center;margin-top: 30px;">
<el-pagination
background
layout="prev, pager, next"
:total="total"
@current-change="current_change">
</el-pagination>
</div>
</div>
</template>
js代碼:(addUser函數中請求的是用express搭建的伺服器,tableData存放傳回的json資料)
export default {
name: "dataList",
data() {
return {
tableData: [],
multipleSelection: [],
total: 0,
pagesize:10,
currentPage:1
}
},
methods: {
addUser() {
this.$http({
method: 'GET',
url: 'http://127.0.0.1:8080/api/users',
}).then(res => {
console.log(res);
if (!res.data.errno) {
this.tableData = res.data.data.users;
this.total= res.data.totalnum;
}
})
.catch(function (error) {
console.log(error);
});
},
current_change:function(currentPage){
this.currentPage = currentPage;
},
mounted: function () {
this.addUser();
}
}
最終效果:

轉載于:https://www.cnblogs.com/dreamsqin/p/9341230.html