<md-menu-bar>
<md-menu ng-repeat="section in sections">
<md-button class="navButton" ng-click="$mdOpenMenu()">
{{section.name}}
</md-button>
<md-menu-content>
<md-menu-item>
<md-button>Subsection 1</md-button>
</md-menu-item>
</md-menu-content>
</md-menu>
</md-menu-bar>
Я делаю что-то вроде выше, но, к сожалению, если я нажму на меню, он останется открытым, даже если я нажму другие кнопки.md-menus не закрывается при использовании ng-repeat
Я просто хочу, чтобы иметь такое же поведение, как
https://material.angularjs.org/latest/demo/menuBar
P.S. Если я не использую ng-repeat (это означает, что меню являются статическими), он работает нормально.
Директива ng-repeat создает отдельный объем, поэтому (скорее всего) ваш пример работает. Одна из возможностей заключается в использовании синтаксиса controllerAs и назначении вашего метода на реальную область управляющего контроллера, а не на угловую $ область. Затем вы получите доступ к вашему методу, открыв новое меню в виде ctrlName.methodName(); Было бы проще, если бы вы создали скрипку –
Pankaj создал кодекс. Большое спасибо! @Maciej, см. Отредактированный вопрос. – Incognito