Я создаю приложение Angular 6 с таблицами данных Angular (https://l-lin.github.io/angular-datatables/#/welcome). Это мой код компонента:
import { Component, OnInit, ViewChild } from '@angular/core';
import { HttpClient, HttpResponse } from '@angular/common/http';
import { DataTableDirective } from 'angular-datatables';
@Component({
selector: 'app-mainmenu',
templateUrl: './mainmenu.component.html',
styleUrls: ['./mainmenu.component.css']
})
export class MainmenuComponent implements OnInit {
@ViewChild(DataTableDirective)
datatableElement: DataTableDirective;
dtOptions: DataTables.Settings = {};
learningPaths: LearningPath[];
constructor(private http: HttpClient) { }
ngOnInit(): void {
const that = this;
this.dtOptions = {
pagingType: 'full_numbers',
pageLength: 10,
serverSide: true,
processing: true,
ajax: (dataTablesParameters: any, callback) => {
that.http
.post<DataTablesResponse>(
'http://localhost:4154/api/LP?p=1'
,
dataTablesParameters, {}
).subscribe(resp => {
that.learningPaths = resp.data;
callback({
recordsTotal: resp.recordsTotal,
recordsFiltered: resp.recordsFiltered,
data: []
});
});
},
columns: [{ data: 'icon', orderable: false }, { data: 'name' }, { data: 'description' }],
order: [[ 1, "asc" ]]
};
}
}
Я хочу иметь возможность передавать текущий индекс страницы API на стороне сервера. Может ли кто-нибудь указать мне правильное направление? Я могу отобразить текущий индекс страницы следующим образом:
{{ (datatableElement.dtInstance | async)?.table().page.info().page }}
но я понятия не имею, как получить доступ к информации о странице до того, как будет сделан вызов ajax.
$event
в методе, когда вы нажимаете кнопку страницы (пример страницы № 2), и расскажите нам, что у вас есть. - person Aayushi Jain   schedule 15.06.2018dataTablesParameters
есть два параметра, т.е.start
иlength
. Если вам нужны элементы конкретной страницы (т.е. вы щелкаете по номеру страницы), на бэкэнде отфильтруйте набор запросов, напримерqueryset[start:start + length]
, выполнит эту работу. - person suhailvs   schedule 30.08.2018<DataTablesResponse>
[ts] Cannot find name 'DataTablesResponse'. [ts] Expected 0 type arguments, but got 1.
- person Jayant Singh   schedule 09.09.2018