Angular 使用动态列-角度材质进行排序

Angular 使用动态列-角度材质进行排序,angular,angular-material2,Angular,Angular Material2,我在用这个,我在做排序。排序工作正常,但我有两个数字列 权重-它的值通过API调用来自DB,并显示在数据源中。(这里,排序正在工作) 双倍重量:公式为:重量*2。 这里,“双重权重”是在HTML中动态计算的,因此它在数据源中不可用 我需要在“双倍重量”列中应用排序。有人能在这方面指导我吗 HTML Weight {{element.weight} Weight {{element.weight*2} TS @ViewChild(MatSort) sort: MatSort; ngOnIn

我在用这个,我在做排序。排序工作正常,但我有两个数字列

  • 权重-它的值通过API调用来自DB,并显示在数据源中。(这里,排序正在工作)
  • 双倍重量:公式为:重量*2。 这里,“双重权重”是在HTML中动态计算的,因此它在数据源中不可用 我需要在“双倍重量”列中应用排序。有人能在这方面指导我吗

    HTML

    Weight

    {{element.weight}

    Weight

    {{element.weight*2}

    TS

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

    我很确定,按
    (权重*2)
    排序将得到与按
    权重排序完全相同的结果


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

    Ok,不管这是没有UX用途的,因为它只是权重的两倍。。。您可以按重量排序,但仍将正确排序。我的意思是,单击“双重重量”可以根据引擎盖下的重量进行排序,因为结果会很好,
    weight
    是您确实拥有的值。请告诉我需要在哪里更改代码。