angular - 使用动态列排序 - Angular Material

标签 angular angular-material2

我正在使用这个URL我正在排序。排序工作正常,但是,我有 2 个数字列

  1. 权重 - 它的值通过 API 调用来自数据库,并且存在于数据源中。 (这里,排序正在工作)
  2. Double Weight:其公式为:重量*2。 此处,“双倍权重”是在 HTML 中动态计算的,因此它在数据源中不可用。

我需要在“双倍权重”列中应用排序。有人可以指导我吗?

HTML

< th mat-h​​eader-cell *matHeaderCellDef mat-sort-header> 权重

< td mat-cell *matCellDef="let element"> {{element.weight}}

< th mat-h​​eader-cell *matHeaderCellDef mat-sort-header> 权重

< td mat-cell *matCellDef="let element"> {{element.weight * 2}}

TS

@ViewChild(MatSort) sort: MatSort;
ngOnInit() {
this.dataSource.sort = this.sort;
}

最佳答案

我非常确定按 (weight * 2) 排序将得到与按 weight 排序完全相同的结果。

因此,当您在两列中显示不同的值时,只需在两种情况下按权重排序即可。

关于angular - 使用动态列排序 - Angular Material ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52760538/

相关文章:

javascript - 带有 oidc-client 的 signinSilentCallback 获得 "user not found in storage"

Angular karma Font Awesome - SyntaxError : Invalid or unexpected token

angular - 使用 Firebase 和 AngularFire2 注册用户

Angular Material 步进器 : Error: Cannot find control with name: 'formArray'

javascript - “mat-form-field”不是已知元素

angular - 等价于 getElementsByTagName 的 Angular

Angular 4 Form Builder 数组添加验证器

Angular material 2改变字体大小

angular - 如何在单击按钮或悬停时将 Angular Material (2.x +)对话框定位到屏幕的右侧

Angular Material 2 允许我们制作具有自定义范围的 slider 吗?