Ich habe ein Problem der Leistung und ich finde die Lösung nicht.Wie kann die ng-repeat-Leistung mit Smart-Table gesteigert werden?
Kontext: Ich muss eine Menge Daten (500 Zeilen, 8 Spalten) in einer Tabelle anzeigen. Um diese Daten anzuzeigen, wählte ich Smart-Tabelle, weil es eine gute Funktionalität bietet, aber das Problem ist, dass ich eine Menge Daten habe und die Zeit der Datenanzeige sehr lang ist (5 - 9 Sekunden, abhängig von der Geräteleistung).
Wichtige Sache: Ich muss alle Daten anzeigen, so dass ich keine Paginierung Methode, Filter begrenzen möchte.
Also dieser Code funktioniert:
<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>
ich gelesen, dass Ionic eine Richtlinie gemacht (collection-repeat) wich ermöglicht eine App riesige Listen von Elementen zu zeigen, viel mehr performant als ng-repeat. Also habe ich versucht, meine Lösung mit sammel wiederholen Remake aber das nicht funktioniert ...
-Code Sammlung-repeat Lösung:
<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>
Fehler: Maximale Call-Stack-Größe überschritten
Fragen: Gibt es eine angularjs oder ionische Lösung, um die Leistung von Smart-Table mit vielen Daten zu erhöhen? Was stimmt nicht mit meiner Sammlung-wiederholen?
versucht es einmal zu binden, zB: Zeile in :: tableaux –
leid, das zu sagen, aber Sie sind eine mobile App zu bauen. Aus Sicht von UX ist das nicht das Beste, um 500 Zeilen mit je 8 Spalten anzuzeigen, daher glaube ich, dass dies das Hauptproblem ist, das Sie lösen müssen. – ThiagoPXP
Ich stimme völlig mit Ihnen überein, dass die Anzeige von 500 Zeilen und 8 Spalten nicht das Beste ist. Aber die Kunden wollen es ... Ich weiß nicht, ob es eine Lösung gibt. – carton