如何在Angular 7中过滤元素

时间:2019-04-04 18:10:44

标签: angular

我有通过字段按名称过滤的元素,我想获取过滤后被过滤的元素。我只需要那些已被过滤的代码,所以代码:(filteredItems =(items | orderBy:'order_prop'| filter:query | limitTo:4))

此代码用于Angular JS-在Angular 7中我需要我如何做?

  <input ng-model="query">
     <div ng-repeat="item in (filteredItems = (items | 
      orderBy:'order_prop' | filter:query | limitTo:4))">
      {{item}}
     </div>

//filteredItems, take the items

我需要在2点以后获得Angular,不再是Angular JS,有人有任何想法吗?

1 个答案:

答案 0 :(得分:0)

如果有人找到了更好的解决方案,请告诉我

//DOCUMENT HTML
<tr #var *ngFor="let cliente of clientesArray | filter:searchClient as 
results" attr.data-id="{{cliente.id}}" [ngClass]="{'selected': 
cliente.id==selectedCustomer}" (click)="customerSelected(cliente.id)">  
    <td class ="pl-4 font-size-15px text-custom"> {{cliente.id}} </td>                                                                                
    <td class="text-custom"> {{cliente.name}} </td>
</tr>

//COMPONENT TYPESCRIPT

@ViewChildren('var') createdItems;

let elementsArray: any[] = [];

for(let element of this.createdItems.toArray()){
  elementsArray.push(element.nativeElement.children);
}

let myElementsArrayObject: {id?: number, name?:string}[] = [];
let object: { id?:number, name?:string} = {};

for(var _i = 0; _i < elementsArray.length; _i++){      
     object.id = elementsArray[_i][0].innerText; // TEXT
     object.name = elementsArray[_i][1].innerText; //TEXT, ADD AS MANY ITEMS 
     YOU WANT

     myElementsArrayObject.push(object);              
}

console.log(myElementsArrayObject);