Tengo una tabla con paginación en mi proyecto Vue. Tengo esos campos:
tableItemsPerPage contiene el número de elementos que se mostrarán por página (10, 25, 50, 100).tableCrrentPage contiene el número de página actual.items de campo contienen los elementos (matriz).Quiero mostrar el siguiente mensaje:
Showing 1 to 10 out of 1500 records. Showing 11 to 20 out of 1500 records. ...El código:
getRecordsText: function() { var records_amount = this.items.length; var start = this.tableCrrentPage; var end = this.tableCrrentPage; return start + " to " + end + " out of " + records_amount + " records"; } No estoy seguro de cómo calcular el start y el end en función de esos campos. ¿Hay alguna fórmula que pueda construir que pueda mostrar los mensajes?
Vea la tabla de abajo
1 2 3 4 5 6 7 8 9 abc aquí tableItemsPerPage = 4
suponiendo que tableCrrentPage es inicialmente 0
usted obtiene
{ start, end } = { start: (tableCrrentPage * 4 ) + 1, end: (tableCrrentPage * 4 ) + 4 }
x= (p, n) => ({ start: (p * n) + 1, end: (p * n) + n }) console.log('10 items per page') console.log(x(0, 10)) console.log(x(1, 10)) console.log(x(2, 10)) console.log('20 items per page') console.log(x(0, 20)) console.log(x(1, 20)) console.log(x(2, 20))