Welcome toVigges Developer Community-Open, Learning,Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.2k views
in Technique[技术] by (71.8m points)

elementui 如何自定义排序,从第二行开始排序

如下图,后端反一个总计给我,但是点击sortable进行排序时,总会将第一行的总计一起带入排序,希望能将这个总计一直放在第一行,不参与排序
image.png

<el-table :data="reportTable" :model="reportTable" @sort-change="changeTableSort" border v-loading="loadings">
...
</el-table>
changeTableSort(column){
      var fieldName = column.prop;
      var sortingType = column.order;
      if(this.reportTable[0].equipmentNumbering=='合计'){
        this.shiftTotal=this.reportTable.shift();
      }
      //按照降序排序
      if(sortingType == "descending"){
          this.reportTable = this.reportTable.sort((a, b) => b[fieldName] - a[fieldName]);
      }
      //按照升序排序
      else{
          this.reportTable = this.reportTable.sort((a, b) => a[fieldName] - b[fieldName]);
      }
      this.reportTable.unshift(this.shiftTotal)
},

之后就将第一行删除,最后再拼上去,但是还是不行,到底哪儿出错了呢?希望走过路过的可以指点指点,多敲敲我的脑瓜,谢谢!!


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

从后台获取到接口数据的那里就把这个合计去掉,再赋值。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to Vigges Developer Community for programmer and developer-Open, Learning and Share
...