1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
| <template> <div class="users"> <el-card class="box-card"> <el-table :data="tableData" style="width: 100%"> <el-table-column prop="date" label="日期" width="180" /> <el-table-column prop="name" label="姓名" width="130" /> <el-table-column prop="address" label="地址" width="180" /> <el-table-column fixed="right" label="操作" width="80" align="right" > <template slot-scope="scope"> <el-button @click="deleteRow(scope.row)" type="text" size="small" > 删除 </el-button> </template> </el-table-column> </el-table> <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="q.pagenum" :page-sizes="[5, 10, 15, 20]" :page-size="q.pagesize" layout="total, sizes, prev, pager, next, jumper" :total="total" > </el-pagination> </el-card> </div> </template>
<script> import axios from 'axios'; export default { data() { return { tableData: [], q: { pagenum: 1, pagesize: 5, query: '' }, total: 0 }; }, created() { this.getUsers(); }, methods: { async getUsers() { const { data: { list, total } } = await axios.get('/api/users', { params: this.q }); this.tableData = list; this.total = total; }, handleSizeChange(pagesize) { this.q.pagesize = pagesize; this.getUsers(); }, handleCurrentChange(pagenum) { this.q.pagenum = pagenum; this.getUsers(); }, async deleteRow({ id }) { const { data } = await axios.delete(`/api/user/${id}`) if (data.status === 200) { this.getUsers(); this.$message.success('删除成功'); } } } }; </script> <style> .box-card { margin: 40px auto 0; width: 630px; } .clearfix:before, .clearfix:after { display: table; content: ''; } .clearfix:after { clear: both; } .el-pagination { margin-top: 15px; } </style>
|