Mam problem z wydajnością i nie znajduję rozwiązania.Jak zwiększyć wydajność powtarzania ng za pomocą inteligentnego stołu?
Kontekst: Potrzebuję wyświetlić wiele danych (500 linii, 8 kolumn) w tabeli. Aby wyświetlić te dane, wybrałem Smart-table, ponieważ oferuje on dobrą funkcjonalność, ale problemem jest to, że mam dużo danych, a czas wyświetlania danych jest bardzo długi (5-9 sekundy, w zależności od wydajności urządzenia).
Ważna informacja: potrzebuję wyświetlić wszystkie dane, więc nie chcę metody paginacji, filtra limitów.
Więc ten kod działa:
<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>
Czytałem, że jonowe wykonane dyrektywę (collection-repeat) wich umożliwia aplikacja pokazać ogromny listy przedmiotów znacznie więcej niż performantly NG-repeat. Więc próbowałem przerobić moje rozwiązanie z kolekcji powtarzać, ale to nie działa ...
Kod kolekcji powtórzyć rozwiązanie:
<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>
Błąd: Maksymalny rozmiar stosu wywołań przekroczyła
pytania: Czy istnieje jakiś angularjs lub roztwór jonowy, aby zwiększyć wydajność inteligentnego stołu z dużą ilością danych? Co jest nie tak z moją kolekcją - powtórzenie?
spróbować związać go raz, ex: wiersz :: obrazach –
przykro powiedzieć, ale ty budujesz aplikację mobilną. Z punktu widzenia UX, nie jest najlepszą rzeczą, aby wyświetlić 500 linii z 8 kolumnami, więc uważam, że to jest twój główny problem do rozwiązania. – ThiagoPXP
Całkowicie się z tobą zgadzam, że wyświetlenie 500 linii i 8 kolumn nie jest najlepszą rzeczą do zrobienia. Ale klienci tego chcą ... Nie wiem, czy istnieje jedno rozwiązanie. – carton