ng-switch и ng-repeat для одного и того же элемента
Я столкнулся с поведением в Angular, которого я не ожидал, и цель этого поста состоит в том, чтобы выяснить, является ли это ошибкой или предполагаемой, и, возможно, объяснить, почему она предназначена.
Сначала посмотрите этот Plunkr:http://plnkr.co/edit/CB7k9r?p=preview , В примере я создал массив под названием массив с тремя объектными записями. Далее я создал ng-переключатель на основе содержимого поля ввода (называемого переключателем). Когда значение переключателя равно 1, оно должно печатать все имена объектов в массиве с префиксом «1» и в противном случае с префиксом «other».
Это не работает как задумано и показывает ошибку:
Error: Argument '?' is required at assertArg
Однако тот же пример переписан (http://plnkr.co/edit/68Mfux?p=preview ) с дополнительным div по списку, ng-переключатель перемещается в этот div, а ng-switch-когда перемещается из li в ul (отделяя ng-repeat и ng-switch-when), работает должным образом.
Может кто-нибудь объяснить, почему это так?