ng-switch i ng-repeat na tym samym elemencie
Napotkałem zachowanie w Angular, którego nie oczekiwałem, a celem tego posta jest sprawdzenie, czy jest to błąd, czy zamierzenie, i ewentualnie wyjaśnienie, dlaczego jest to zamierzone.
Najpierw zobacz ten Plunkr:http://plnkr.co/edit/CB7k9r?p=preview . W przykładzie utworzyłem tablicę o nazwie tablica z trzema wpisami obiektów. Następnie stworzyłem przełącznik ng na podstawie zawartości pola wejściowego (nazywanego przełącznikiem). Gdy wartość przełączania wynosi 1, należy wydrukować wszystkie nazwy obiektów w tablicy z przedrostkiem „1” i przedrostkiem „inne”.
To nie działa zgodnie z przeznaczeniem i wyświetla błąd:
Error: Argument '?' is required at assertArg
Jednak ten sam przykład przepisany (http://plnkr.co/edit/68Mfux?p=preview ) z dodatkowym div wokół listy, ng-switch przeniesiony do tego div i ng-switch-when przeniesiony z li do ul (oddzielający ng-repeat i ng-switch-when) działa zgodnie z przeznaczeniem.
Czy ktoś mógłby wyjaśnić, dlaczego tak jest?