привет, я работаю над навигационным направлением. если есть какие-либо дочерние записи, я должен добавить атрибут "uib-dropdown",
<li ng-attr-uib-dropdown="{{!!tree[$index].children ? '' : undefined }}" ng-repeat="nav in tree" ng-class="{ 'active' : isActive(nav.path) }">
переменная "!! tree [$ index].children" вернет true или false. Я за google сейчас с 2 часов, но я не могу понять, как использовать это выражение с правильной настройкой ng-attr.
потому что теперь он добавляет uib-dropdown для каждого li. не имеет значения, верно это или ложно.
Я надеюсь, что кто-то может мне помочь. благодаря
Поскольку наш ответ для tree[$index].children
может быть правдивым, если у tree[$index].children
есть ответ, он будет правдой, если он пуст или не определен, тогда он будет false/falsey.Нет необходимости в !!
или тернарный оператор.
<li ng-attr-uib-dropdown="{{tree[$index].children}}">
Вы также можете использовать ||
(или оператора), чтобы лучше проиллюстрировать "ложь" неопределенного. <li ng-attr-uib-dropdown="{{tree[$index].children || undefined}}">
ng-if
если существует массив "еда", то разрешите выпадающее меню. Если вы удалите массив "food", ссылка будет заменена без выпадающего списка. <a href ng-if="!food">
Click me, no dropdown, yo!
</a>
<!-- Simple dropdown -->
<span ng-if="food" uib-dropdown on-toggle="toggled(open)">
<a href id="simple-dropdown" uib-dropdown-toggle>
Click me for a dropdown, yo!
</a>
<ul class="dropdown-menu" uib-dropdown-menu aria-labelledby="simple-dropdown">
<li ng-repeat="choice in items">
<a href>{{choice}}</a>
</li>
</ul>
</span>
ng-if
работать на вас?