Ho un problema di prestazioni e non trovo la soluzione.Come aumentare le prestazioni ng-repeat usando Smart-Table?
Contesto: ho bisogno di visualizzare molti dati (500 linee, 8 colonne) in una tabella. Per visualizzare questi dati ho scelto di utilizzare Smart-table perché offre buone funzionalità, ma il problema è che ho molti dati e il tempo di visualizzazione dei dati è molto lungo (5 - 9 secondi, a seconda delle prestazioni del dispositivo).
Importante: ho bisogno di visualizzare tutti i dati, quindi non voglio il metodo di impaginazione, limitare il filtro.
Quindi questo codice sta lavorando:
<ion-scroll class="scrollVertical" direction="xy" overflow-scroll="true" >
<table st-table="tableaux" class="table table-striped">
<thead>
<tr>
<th ng-repeat="column in ColumnTable">{{column.Label}}</th>
</tr>
<tr>
<th ng-repeat="column in ColumnTable">
<input st-search="{{column.Id}}" placeholder="" class="input-sm form-control" type="search" ng-model="inputRempli"/>
</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="row in tableaux">
<td ng-repeat="column in ColumnTable" ng-init="colonne = column.Id">{{row[colonne]}}</td>
</tr>
</tbody>
</table>
</ion-scroll>
ho letto che ionico ha fatto una direttiva (collection-repeat) a scomparsa che permette un app per mostrare enormi liste di oggetti molto più performantly di NG-repeat. Così ho cercato di rifare la mia soluzione con la raccolta-repeat, ma questo non funziona ...
Codice soluzione di raccolta-repeat:
<ion-scroll class="scrollVertical">
<table st-table="tableaux" class="table table-striped">
<thead>
<tr>
<th ng-repeat="column in ColumnTable">{{column.Label}}</th>
</tr>
<tr>
<th ng-repeat="column in ColumnTable">
<input st-search="{{column.Id}}" placeholder="" class="input-sm form-control" type="search" ng-model="inputRempli"/>
</th>
</tr>
</thead>
<tbody>
<tr collection-repeat="row in tableaux" item-width="200px" item-height="100px">
<td collection-repeat="column in ColumnTable" ng-init="colonne = column.Id" item-width="100px" item-height="100px">{{row[colonne]}}</td>
</tr>
</tbody>
</table>
</ion-scroll>
Errore: Dimensione massima stack di chiamate superato
Domande: Esistono angularjs o soluzioni ioniche per aumentare le prestazioni di smart-table con molti dati? Cosa c'è di sbagliato nella mia collezione-ripetere?
tenta di associare una volta, ad esempio: in fila :: tableaux –
spiace dirlo, ma si stanno costruendo un app mobile. Dal punto di vista UX, non è la cosa migliore per visualizzare 500 righe con 8 colonne ciascuna, quindi credo che questo sia il tuo problema principale da risolvere. – ThiagoPXP
Sono totalmente d'accordo con te sul fatto che la visualizzazione di 500 linee e 8 colonne non è la cosa migliore da fare. Ma i clienti lo vogliono ... Non so se c'è una soluzione. – carton