Używam Angular.js dla aplikacji, która używa ukrytych trs do symulacji efektu wysuwania, pokazując tr i przesuwając w dół div w td poniżej. Ten proces działał fantastycznie, używając knockout.js podczas iteracji po tablicy tych wierszy, ponieważ mogłem użyć <!-- ko:foreach -->
obu elementów tr.
Z angular, ng-repeat
należy zastosować do elementu html, co oznacza, że nie mogę powtórzyć tych podwójnych wierszy przy użyciu standardowych metod. Moją pierwszą odpowiedzią na to było utworzenie dyrektywy reprezentującej te podwójne tr, ale to nie wyszło, ponieważ szablony dyrektyw muszą mieć jeden element główny, ale mam dwa ( <tr></tr><tr></tr>
).
Jeśli ktoś z doświadczeniem z powtarzaniem ng i angularem, który złamał to, może wyjaśnić, jak rozwiązać ten problem, byłbym bardzo wdzięczny.
(Powinienem również zauważyć, że dołączanie ng-repeat
do tbody jest opcją, ale daje to wiele tbodys, i zakładam, że jest to zła forma dla standardowego HTML, chociaż popraw mnie, jeśli się mylę)
źródło
Deweloper AngularJS @ igor-minar odpowiedział na to pytanie w Angular.js ng-repeat w wielu elementach .
Miško Hevery niedawno wdrożył odpowiednie wsparcie za pośrednictwem
ng-repeat-start
ing-repeat-end
. To ulepszenie nie zostało wydane w wersji 1.0.7 (wersja stabilna) i 1.1.5 (wersja niestabilna).Aktualizacja
Jest to teraz dostępne w wersji 1.2.0rc1. Sprawdź oficjalne dokumenty i ten screencast autorstwa Johna Lindquista.
źródło
Posiadanie wielu elementów może być prawidłowe, ale jeśli próbujesz zbudować przewijalną siatkę ze stałymi nagłówkami / stopkami, poniższe czynności nie zadziałają. W tym kodzie przyjęto następujący kod CSS, jquery i AngularJS.
HTML
CSS do budowania stałego nagłówka / stopki dla przewijalnej siatki tabeli
Jquery do powiązania poziomego przewijania tbody, to nie działa, ponieważ tbody powtarza się podczas powtarzania ng.
źródło
Możesz to zrobić w ten sposób, co pokazałem w tej odpowiedzi: https://stackoverflow.com/a/26420732/769900
źródło