首页 > 解决方案 > 角度将管道数组分配给变量

问题描述

我有一些代码:

  <tr *ngFor="let article of articles
    | tableFilter: { id: searchResult, title: searchResult, author: searchResult }
    | orderBy:sortType:sortReverse
    | paginate: config"
      (change)="updateCollectionSize()">...</tr>

我的问题很简单。执行完所有管道后如何将文章数组分配给新变量?

标签: angular

解决方案


如果您真的希望修改后的列表作为模板中的变量,那么您可以这样做:

 <div *ngIf="articles
    | tableFilter: { id: searchResult, title: searchResult, author: searchResult }
    | orderBy:sortType:sortReverse
    | paginate: config 
    as filteredArticles">

    <tr *ngFor="let article of filteredArticles">...</tr>
  </div>

基本上,只需将所有内容包装在 ngIf 中并使用“as”(或“let”关键字)来声明包含过滤文章的模板变量。

也就是说,正如@trichetriche 在评论中已经说过的那样,您可能应该在您的 Typescript 中做这种事情。如果不了解有关数据结构以及您如何尝试修改它的更多信息,我将无法为您提供帮助。


推荐阅读