В настоящее время у меня есть два поисковых входа, которые обрабатывают фильтрацию таблицы в AngularJS.
<input type="text" name="clientRefFilter" data-ng-model="filterPortfolio.clientRef">
<input type="text" name="appNoFilter" data-ng-model="filterPortfolio.ep_ApplicationNumber"">
<tr data-ng-repeat="patent in $ctrl.portfolioData | filter: filterPortfolio as Result">
<td>
<a data-ng-bind="patent.ep_ApplicationNumber"></a>
</td>
<td>
<a data-ng-bind="patent.clientRef"></a>
</td>
</tr>
Теперь мне нужно добавить раскрывающийся фильтр, который заполняется массивом в контроллере filterTopLevelCat
, который классифицируетвсе данные таблиц, которые поступают из patent.serviceList
, которые я затем должен отображать альтернативный текст для пользователя.Проверьте ниже:
контроллер
vm.filterTopLevelCat = [ //drop-down filter options
{name: 'All Patents'}, //no filter applied
{name: 'Action Available'}, //Epct available and Epct being generated items shown
{name: 'No Action Available'} // Epct rejected items shown
]
просмотр
<input type="text" name="clientRefFilter" data-ng-model="filterPortfolio.clientRef">
<input type="text" name="appNoFilter" data-ng-model="filterPortfolio.ep_ApplicationNumber"">
<select data-ng-options="item.name for item in $ctrl.filterTopLevelCat">
</select>
<tr data-ng-repeat="patent in $ctrl.portfolioData | filter: filterPortfolio as Result">
<td>
<a data-ng-bind="patent.ep_ApplicationNumber"></a>
</td>
<td>
<a data-ng-bind="patent.clientRef"></a>
</td>
<td>
<table>
<tr data-ng-repeat="item in patent.serviceList">
<td>
<span data-ng-if="item.serviceStatus == 'Epct available'">Ready for E-PCT</span>
<span data-ng-if="item.serviceStatus == 'Epct rejected'">Not Eligble</span>
<span data-ng-if="item.serviceStatus == 'Epct being generated'">Form 1200 generating</span>
<td>
<tr>
<table>
<td>
Я использовал директиву ng-change
, чтобы получить доступ к фильтру из контроллера и перейти к его удалению, но изо всех сил пытался отфильтровать данные на основе значений состояния.например, Epct available
Вопрос
Как мне подходить к этому, чтобы фильтр обрабатывал фильтрацию для исходных двух входных данных поиска и новоговыпадающий фильтр?