Попытка свернуть раскрывающееся меню (выбор языка) на панели навигации мобильной начальной загрузки. При первом щелчке раскрывающееся меню с языками открывается нормально, после изменения языков раскрывающееся меню языков закрывается, но когда я снова пытаюсь изменить язык, мне нужно дважды щелкнуть раскрывающееся меню, чтобы оно открылось. Кто-нибудь может мне с этим помочь?
<li class = "dropdown" dropdown style = "margin-top: 25%; left: 7.5%;">
<a href = "#" class = "dropdown-toggle" dropdown-toggle role = "button" ng-click = "visible = true">
{{vm.languageSel.name}}
<span class = "caret"></span>
</a >
<ul class = "dropdown-menu" ng-show = "visible">
<li ng-repeat = "lang in vm.languages" ng-click = "$parent.visible = false">
<a ng-click = "vm.chgLang($index)">
{{lang.name}}
</a>
</li>
</ul>
</li>
пошел дальше и попробовал, все та же проблема.
пошел дальше и отредактировал сообщение с более подробной информацией
что-то еще должно мешать вашему коду, я быстро попробовал ваш код (в тестовом проекте ionic 1 было проще всего с моей текущей настройкой, использует Angular v1.5.3) без изменений, и он работал нормально.
Прежде чем публиковать дополнительный код, вы должны проверить свое приложение в инструментах разработчика браузера и проверить прослушиватели событий, привязанные к вашему элементу и его родителям. Поскольку я не смог воспроизвести вашу проблему, что-то еще должно помешать, но мы не можем просмотреть весь код для этого, его может даже не быть в нем и вызвано плагином, который вы не писали, требуется работающее приложение чтобы изолировать виноватых здесь.
Пошел вперед и сделал это, я думаю, что это проблема с ng-show и ng-show, мешающими раскрывающемуся меню начальной загрузки



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Я думаю, это потому, что visible по умолчанию инициализирован как false. Попробуйте добавить ng-init = "visible = true" в первую директиву li
Все та же проблема
Я думаю, это из-за $ parent. Можно без него попробовать? Как это:
<li class = "dropdown" dropdown style = "margin-top: 25%; left: 7.5%;">
<a href = "#" class = "dropdown-toggle" dropdown-toggle role = "button" ng-click = "visible = true">
{{vm.languageSel.name}}
<span class = "caret"></span>
</a >
<ul class = "dropdown-menu" ng-show = "visible">
<li ng-repeat = "lang in vm.languages" ng-click = "visible = false">
<a ng-click = "vm.chgLang($index)">
{{lang.name}}
</a>
</li>
</ul>
</li>
все еще не повезло, было бы полезно опубликовать больше моего кода?
возможно, это проблема распространения, вы пытались разместить 2 события щелчка в одном и том же месте?
<a ng-click = "vm.chgLang($index); $parent.visible = false">(и удаление его изli)