javascript - 元素用户界面 : Emitting an event on sort caret click

标签 javascript vue.js vuejs2 element-ui

当在table上单击排序插入符时,有什么方法可以发出事件(最好使用与标题单击相同的参数)与可排序的列?

我可以通过单击任何可排序列的标题(标题单击)来发出事件,但单击排序插入符时不会发生任何情况。

最佳答案

I can emit an event by clicking on the header of any sortable column (header-click), but nothing happens when clicking on the sort carets.

这是预期的行为,看起来您正在执行 sort-change 事件,当表的排序更改时会触发该事件:

<template>
  <el-table @sort-change="sortChange" @header-click="headerClick" :data="tableData" :default-sort="{prop: 'date', order: 'descending'}" style="width: 100%">
    <el-table-column prop="date" label="Date" sortable width="180">
    </el-table-column>
    <el-table-column prop="name" label="Name" sortable width="180">
    </el-table-column>
    <el-table-column prop="address" label="Address" sortable :formatter="formatter">
    </el-table-column>
  </el-table>
</template>



<script>
export default {
 data() {
      return {
        tableData: [{
          date: '2016-05-03',
          name: 'Tom',
          address: 'No. 189, Grove St, Los Angeles'
        },
        //...
       ]
      }
    },
    methods: {
      sortChange(sortProps){
          this.headerClick(sortProps.column,event) //optional: trigger header-click event
      },
      headerClick(column, event){
        console.log("Header clicked: " + JSON.stringify(column))
      }
    }
}
</script>

Demo

关于javascript - 元素用户界面 : Emitting an event on sort caret click,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54582436/

相关文章:

javascript - 删除 ie8 及更早版本中的 JS 和 CSS 文件

javascript - 在谷歌地图中显示 tiff 图像

javascript - 仅当 Vuex 存储中的数据为 "stale"或不存在时才调用 API

vuejs2 - 如何更改/覆盖Vuetify js中禁用字段的默认颜色?

javascript - JQuery 数据表 : Show/hide row details with multiple tables

javascript - 如何将 JSON 数据传递给代码隐藏方法(而不是 Webmethod)?

javascript - 使用带有 Go 后端的 VueJS

vue.js - 如何在 vue 3 (Danfo.js) 中导入 NPM 包

javascript - 有没有办法在 Vue JS 的列表渲染(v-for)中使用条件渲染

javascript - Vue js - 来自发布请求的数据将不会呈现