guhongwei 4 年之前
父節點
當前提交
bd092e7470
共有 2 個文件被更改,包括 21 次插入7 次删除
  1. 20 6
      src/layout/personnel/resume.vue
  2. 1 1
      src/views/personnel/resume.vue

+ 20 - 6
src/layout/personnel/resume.vue

@@ -12,7 +12,7 @@
         </el-col>
         <el-col :span="24" class="list">
           <template>
-            <el-table :data="resumeInfo" style="width:100%">
+            <el-table :data="list" style="width:100%">
               <el-table-column prop="title" label="简历名称" align="center"> </el-table-column>
               <el-table-column prop="name" label="姓名" align="center"> </el-table-column>
               <el-table-column prop="education" label="学历" align="center"> </el-table-column>
@@ -35,11 +35,11 @@
             </el-table>
             <el-col :span="24" class="page">
               <el-pagination
-                @size-change="handleSizeChange"
                 @current-change="handleCurrentChange"
                 :current-page="currentPage"
                 layout="total, prev, pager, next, jumper"
                 :total="total"
+                :page-size="pageSize"
               >
               </el-pagination>
             </el-col>
@@ -51,6 +51,7 @@
 </template>
 
 <script>
+import _ from 'lodash';
 export default {
   name: 'resume',
   props: {
@@ -60,6 +61,9 @@ export default {
   components: {},
   data: () => ({
     currentPage: 1,
+    pageSize: 10,
+    origin: [],
+    list: [],
   }),
   created() {},
   computed: {},
@@ -73,11 +77,21 @@ export default {
     handleClick(row) {
       this.$emit('list', { data: row });
     },
-    handleSizeChange(val) {
-      console.log(`每页 ${val} 条`);
+    search(page = 1) {
+      this.$set(this, `list`, this.origin[page - 1]);
     },
-    handleCurrentChange(val) {
-      console.log(`当前页: ${val}`);
+    handleCurrentChange(currentPage) {
+      this.search(currentPage);
+    },
+  },
+  watch: {
+    resumeInfo: {
+      immediate: true,
+      deep: true,
+      handler(val) {
+        if (val && val.length > 0) this.$set(this, `origin`, _.chunk(val, this.pageSize));
+        this.search();
+      },
     },
   },
 };

+ 1 - 1
src/views/personnel/resume.vue

@@ -35,7 +35,7 @@ export default {
   methods: {
     ...mapColumn(['query', 'delete', 'fetch']),
     async search({ skip = 0, limit = 10, ...info } = {}) {
-      const res = await this.query({ skip, limit, ...info });
+      const res = await this.query({ ...info });
       if (this.$checkRes(res)) {
         this.$set(this, `resumeInfo`, res.data);
         this.$set(this, `total`, res.total);