elementUI 表格排序多列排序


elementui 多列排序 使用效果上不是很好但需要記錄下 多列排序的 有效方法
<el-table
:header-cell-class-name="handleHeaderClass"
@header-click="sortChangePushDate"
@sort-change="handleTableSort" >

  <script >
  method:{
  handleTableSort (column) {
        // 有些列不需要排序,提前返回
        if (column.sortable !== 'custom') {
            return
        }
        if (!column.multiOrder) {
            column.multiOrder = 'descending'
        } else if (column.multiOrder === 'descending') {
            column.multiOrder = 'ascending'
        } else {
            column.multiOrder = ''
        }
        this.handleOrderChange(column.property, column.multiOrder)
    },
    handleOrderChange(orderColumn, orderState) {
        let result = this.ordersList.find(e => e.orderColumn === orderColumn)
        if (result) {
            result.orderState = orderState
        } else {
            this.ordersList.push({
                orderColumn: orderColumn,
                orderState: orderState
            })
        }
        // 調接口查詢,在傳參的時候把ordersList進行處理成后端想要的格式
        console.warn("this.ordersList : 排序列", this.ordersList)
        this.loadUmengCountListDate()
    },
    // 設置列的排序為我們自定義的排序
    handleHeaderClass({column}) {
        column.order = column.multiOrder
    },
  }
  </script>

以上方法 適用於多列查詢 ,一般情況下 多列查詢條件不是很完善。使用條件 則不適用


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM