0

谁能建议如何使用分页结果配置数据表?

举个例子 :

我的后端 api 的分页结果:

{
  "total": 50,
  "per_page": 15,
  "current_page": 1,
  "last_page": 4,
  "next_page_url": "http://domain.app?page=2",
  "prev_page_url": null,
  "from": 1,
  "to": 15,
  "data":[
        {
            // Result Object
        },
        {
            // Result Object
        }
  ]
}

目前我正在使用ng2-smart-tableangular 6

你们可以使用普通数据表选项给我解决方案,我可以从中控制分页。

4

2 回答 2

0

这是我对 ng2-smart-table 的配置,希望对你有所帮助。

HTML

<ng2-smart-table [settings]="settings" [source]="alerts"></ng2-smart-table>

组件 ts

配置:

alerts: LocalDataSource;

 settings = {
    columns: {
      tester: {
        title: 'Tester'
      },
      part_number: {
        title: 'Part Number',
      },
    editable: false,
    actions:{
      add: false,
      edit: false,
      delete: false
    }
  };

执行

ngOnInit() { 
    this.alerts= new LocalDataSource([]); 
    this.alertService.getAlertsObservable().subscribe(res =>{
      this.alerts.load(res); 
    }); 
}
于 2018-08-08T15:16:55.810 回答
0

如果您阅读此主题,我想您会找到解决方案。https://github.com/akveo/ng2-smart-table/issues/576 这是来自线程的简要信息

this.source = new ServerDataSource(http, {
  endPoint: this.url,
  pagerLimitKey:"_limit",
  pagerPageKey:"_page",
  sortDirKey: "_order",
  sortFieldKey: "_sort",
  dataKey:'data',
  totalKey:'total_count'
});

从服务器返回的数据:

{
  data: [
    { "id": 1, "value": "A" },
    { "id": 2, "value": "B" },
    ...
  ],
  total_count: 10000
}

total_count 将用于计算页数。

或者,我使用 LocalDataSource 解决了这个问题,比如 从后端分页的 ng2-smart-table (Spring)

于 2019-04-10T08:03:34.710 回答