2017-02-02 2 views
0

Я использую PrimeGg dataGrid в своем проекте angular2. Может ли кто-нибудь сказать мне, как получить номер страницы?Как получить номер страницы в PrimeNg DataGrid в угловом 2?

+0

<р-DataGrid [значение] = «вопросы» [paginator] = «true» [rows] = «1»> Список вопросов <шаблон let-question pTemplate = " пункт»пусть-я = "индекс"> <р-панель [заголовок] = "question.q_name"[стиль] = "{ 'выравнивания текста': 'центр'}">

{{question.ch_one}}
Это мой код, когда пользователь нажимает на метод подсчета переключателей, вызывается – adarsh

+0

, а так как rows = 1, метод count всегда будет звонить с индексом i как 0 – adarsh

ответ

0

Это уже дано в примере PrimeNG DataGrid: -

http://www.primefaces.org/primeng/#/datagrid

просто введите [Paginator] = "истина" в р-DataGrid, так что вы можете увидеть ваш Paginator на DataGrid

<p-dataGrid [value]="cars" [paginator]="true" [rows]="10" (onPage)="onPage($event)"> 

и если у вас есть 9 строк только чем он не будет отображать любую пагинацию так что вы можете показать количество строк, изменив значение в [строке]

и ц

private onPage(e) { 
    console.log(e); 
    } 

вы получите первое значение & строки, как если вы находитесь на странице номер 1 то утешать результат будет

Object {first: 0, rows: 10} 
+0

Это не то, о чем я спрашиваю, paginator с datagrid работает нормально, но мне нужно, чтобы текущий номер страницы обрабатывал что-то в моем коде, и как получить этот номер текущей страницы? – adarsh

+0

@adarsh ​​у вас есть решение для этого? –

+0

onPage не является событием в datagrid, так как вы используете его для получения текущего номера страницы? – adarsh

1

я провел более двух часов, чтобы понять простой решение для себя. Поскольку вы пытались получить текущую страницу (выбранную) в меню разбиения на страницы. Я нашел это решение для себя, надеюсь, что это поможет вам (но я думаю, что вам это больше не нужно) и другим людям, которые попытаются получить такую ​​же ценность.

Вы должны сделать свой DataTable работу с LazyLoad

 <p-dataTable [totalRecords]="totalItems" [lazy]="true" [rows]="rows" [paginator]="true" (onLazyLoad)="searchCustomersLazy($event)"> 
     </p-dataTable> 

и события Hande из (onLazyLoad) в вашем FUNC в моем случае это был searchCustomersLazy($event) как это

searchCustomersLazy(event) { 
    // some code here for example request to API 
    let currentPage: number; 
    //event.first = First row offset 
    //event.rows = Number of rows per page 
    currentPage = event.first/event.rows + 1; 
    console.log('currentPage = ' + currentPage); 
} 
Смежные вопросы