1 import { Injectable } from '@angular/core';
2
3 @Injectable({
4 providedIn: 'root'
5 })
6 export class TableDataService {
7
8 constructor() { }
9
10 getTableData(currentPage: number, itemsPerpage: number): Object {
11 let totalDatas = [
12 { id: 0, name: "张三", gender: "男", age: 23 },
13 { id: 1, name: "李四", gender: "男", age: 25 },
14 { id: 2, name: "王五", gender: "男", age: 28 },
15 { id: 3, name: "赵六", gender: "男", age: 22 },
16 { id: 4, name: "马七", gender: "男", age: 29 },
17 { id: 5, name: "锅巴", gender: "男", age: 30 },
18 { id: 6, name: "关羽", gender: "男", age: 56 },
19 { id: 7, name: "张飞", gender: "男", age: 28 },
20 { id: 8, name: "刘备", gender: "男", age: 26 },
21 { id: 9, name: "王启年", gender: "男", age: 23 },
22 { id: 10, name: "郭麒麟", gender: "男", age: 28 },
23 { id: 11, name: "陈萍萍", gender: "男", age: 45 },
24 { id: 12, name: "影子", gender: "男", age: 67 },
25 { id: 13, name: "高达", gender: "男", age: 89 },
26 { id: 14, name: "上山虎", gender: "男", age: 24 },
27 { id: 15, name: "海棠朵朵", gender: "男", age: 18 },
28 ]
29
30
31 let result = [];
32 let startNumber = (currentPage - 1) * itemsPerpage;
33 let endNumber = (currentPage) * itemsPerpage;
34
35 totalDatas.map((item, index) => {
36 if ((index >= startNumber) && (index < endNumber)) {
37 result.push(item);
38 } else {
39 // Do-nothing
40 }
41 })
42
43
44 return {
45 currentPage: currentPage,
46 itemsPerpage: itemsPerpage,
47 totalCounts: totalDatas.length,
48 list: result,
49 }
50 }
51 }