如何按特定属性对JSON进行排序,以将其显示在角度数据表中

时间:2019-10-10 20:39:13

标签: javascript json angular typescript

下午好,我有一个查询,我想订购使用api后得到的json,以在数据表中显示它,问题是我不想在后端订购它,而只是在传递之前将其保存到数据表中,以便将其直接显示在您指定属性的数据表中。

这是我用来订阅并获取数据的代码

我的JSON

Data URL

  RenderDataTable() {
        this.isLoading=true;  // El Spinner se muestra mientras se estan consumiendo los datos de la Api.
        this.PrtgService.getAllElements(this.table).subscribe(  
          (res) => {  
              this.dataSource = new MatTableDataSource();  
              this.dataSource.data = res;  // Asigando a lo que me estoy subscribiendo para asignarlo a un DataSource
              this.dataSource.paginator = this.paginator; // Paginando el DataSource
              this.isLoading=false;     // Si la carga de datos proveniente de la Api fue existosa, dejo de mostrar el Spinner
              // console.log(res);          // Imprimo para comporbar que todo Ok y estoy consumiendo lo deseado.  
              this.LengthEquipos=res.length;   // Obtengo la longitud del arrray que me traigo de la API.   
              // console.log(this.LengthEquipos);
        },    
        (error) => {     
          console.log('Se produjo un error mientras intentaba recuperar '+this.table + '!' + error);      
        });            
    }

正如我的回答所示:

enter image description here

但就我而言,我想按Vendedor属性排序数据

1 个答案:

答案 0 :(得分:2)

要详细说明我有关在将数组分配给表之前对数组进行排序的评论:更改此行:

this.dataSource.data = res; 

对此:

this.dataSource.data = res.sort((a, b) => a.vendedor.localeCompare(b.vendedor));