Угловая фильтрация по значению поля

0

У меня есть таблица, которую я выполняю ng-repeat и получаю данные с сервера

<tr ng-repeat="assetsdetail in detailAssets | filter: {IND_RECORD_TYPE : !RUNNING}:true">
        <td>{{assetsdetail.MASTER_ASSET_TYPE}}</td>
        <td>{{assetsdetail.MINOR_ASSET_TYPE}}</td>
        <td>{{assetsdetail.DETAIL_ASSET_TYPE}}</td>
        <td>{{assetsdetail.PRODUCT_DESC}}</td>
        <td>{{assetsdetail.VENDOR_NAME}}</td>
        <td>{{assetsdetail.IND_RECORD_TYPE}}</td>
      </tr>

Я хочу достичь здесь, что я хочу, чтобы все данные ИСКЛЮЧАЛИ тот, у которого есть IND_RECORD_TYPE RUNNING. Я до сих пор не смог этого добиться, это их простой способ сделать это?

Теги:
filter

2 ответа

1
Лучший ответ

Ну, для этого вам не нужен фильтр. Простое ng-show может сделать трюк следующим образом:

<tr ng-repeat="assetsdetail in detailAssets" ng-hide="assetsdetail.IND_RECORD_TYPE == 'RUNNING'">
    <td>{{assetsdetail.MASTER_ASSET_TYPE}}</td>
    <td>{{assetsdetail.MINOR_ASSET_TYPE}}</td>
    <td>{{assetsdetail.DETAIL_ASSET_TYPE}}</td>
    <td>{{assetsdetail.PRODUCT_DESC}}</td>
    <td>{{assetsdetail.VENDOR_NAME}}</td>
    <td>{{assetsdetail.IND_RECORD_TYPE}}</td>
</tr>

Однако, если вы не можете использовать фильтр здесь, как вы можете это сделать:

<tr ng-repeat="assetsdetail in detailAssets | filter: filterItem">
    <td>{{assetsdetail.MASTER_ASSET_TYPE}}</td>
    <td>{{assetsdetail.MINOR_ASSET_TYPE}}</td>
    <td>{{assetsdetail.DETAIL_ASSET_TYPE}}</td>
    <td>{{assetsdetail.PRODUCT_DESC}}</td>
    <td>{{assetsdetail.VENDOR_NAME}}</td>
    <td>{{assetsdetail.IND_RECORD_TYPE}}</td>
</tr>

И в вашем контроллере объявите функцию "filterItem" следующим образом:

$scope.filterItem = function(item) {
    if(item.IND_RECORD_TYPE == 'RUNNING') {
        return false;
    }
    return true;
}

Что делает эта функция, так это то, что она берет каждый "элемент" массива и возвращает true, если вы хотите отобразить его или false, если вы хотите скрыть его. "Элемент" в вашем случае - "assetdetail"

1

изменение

filter: {IND_RECORD_TYPE : !RUNNING}

в

filter: {IND_RECORD_TYPE : '!RUNNING'}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню