Вы можете использовать этот нг-переключатель:
<div ng-app ng-controller="friendsCtrl">
<label>Search: </label><input ng-model="searchText" type="text">
<div ng-init="filtered = (friends | filter:searchText)">
<h3>'Found '{{(friends | filter:searchText).length}} friends</h3>
<div ng-switch="(friends | filter:searchText).length">
<span class="ng-empty" ng-switch-when="0">No friends</span>
<table ng-switch-default>
<thead>
<tr>
<th>Name</th>
<th>Phone</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="friend in friends | filter:searchText">
<td>{{friend.name}}</td>
<td>{{friend.phone}}</td>
</tr>
</tbody>
</table>
</div>
Вы уже используете элемент Publish / @ Order для упрощения кода, однако я бы посоветовал быть как можно более явным.
В любом случае вы можете упростить логику и не беспокоиться о Стоимость заказа ...
<Publish ... Value="Component1Questions">CMP1 And Not (CMP2 Or CMP3)</Publish>
<Publish ... Value="Component2Questions">CMP2 And Not (CMP1 Or CMP3)</Publish>
<Publish ... Value="Component3Questions">CMP3 And Not (CMP1 Or CMP2)</Publish>
<Publish ... Value="VerifyReadyDlg">Not (CMP1 Or CMP2 Or CMP3)</Publish>
Я до сих пор не знаю, является ли это хорошей практикой, но я получаю те же результаты примерно так:
<Publish Dialog="Questions" Control="Next" Event="NewDialog" Value="Component1Questions" Order="4">INSTALLCOMPONENT1</Publish>
<Publish Dialog="Questions" Control="Next" Event="NewDialog" Value="Component2Questions" Order="3">INSTALLCOMPONENT2</Publish>
<Publish Dialog="Questions" Control="Next" Event="NewDialog" Value="Component3Questions" Order="2">INSTALLCOMPONENT3</Publish>
<Publish Dialog="Questions" Control="Next" Event="NewDialog" Value="VerifyReadyDlg" Order="1">1</Publish>
Я имею в виду, поменять местами порядковые номера и забыть о композитинге условия. В конце концов, количество условий у вас такое же, но оно намного удобнее и удобнее для чтения. Конечно, это означает, что возникает более одного события NewDialog, но отображается только последнее. Кто-нибудь знает какие-нибудь веские причины не делать этого?