【区分vue2和vue3下的element UI Table 表格组件,分别详细介绍属性,事件,方法如何使用,并举例】

在 Vue 2 和 Vue 3 中,Element UI 和 Element Plus 分别提供了 Table 表格组件。下面我将分别介绍这两个版本下表格组件的属性、事件和方法,并给出使用示例。

Vue 2 + Element UI Table

属性 (Attributes)

data: 表格数据,类型为数组。

columns: 列的描述数据对象,类型为数组。

border: 是否带有纵向边框。

stripe: 是否为斑马纹表格。

fit: 列的宽度是否自撑开。

highlight-current-row: 是否要高亮当前行。

事件 (Events)

selection-change: 当用户选择行发生变化时会触发该事件。

cell-click: 当某个单元格被点击时会触发该事件。

row-click: 当某一行被点击时会触发该事件。

方法 (Methods)

Element UI 的 Table 组件没有直接暴露太多方法,但你可以通过引用 (ref) 访问 Vue 实例,并调用 Vue 的内置方法。

示例

vue

<el-table

:data="tableData"

style="width: 100%"

@selection-change="handleSelectionChange"

复制代码
<el-table-column  
  type="selection"  
  width="55"  
>  
</el-table-column>  
<el-table-column  
  prop="date"  
  label="日期"  
  width="140"  
>  
</el-table-column>  
<el-table-column  
  prop="name"  
  label="姓名"  
  width="120"  
>  
</el-table-column>  

Vue 3 + Element Plus Table

属性 (Attributes)

data: 表格数据,类型为数组。

columns: 列的描述数据对象,类型为数组。

border: 是否展示纵向边框。

stripe: 是否为斑马线表格。

fit: 列的宽度是否自撑开。

highlight-current-row: 是否要高亮当前行。

事件 (Events)

selection-change: 当选中项发生变化时会触发该事件。

cell-click: 当某个单元格被点击时会触发该事件。

row-click: 当某一行被点击时会触发该事件。

方法 (Methods)

与 Element UI 类似,Element Plus 的 Table 组件也没有直接暴露很多方法,但你可以通过 ref 访问 Vue 3 的组件实例,并使用 Vue 3 的 Composition API 进行操作。

示例 (使用 Composition API)

vue

<el-table

:data="tableData"

style="width: 100%"

@selection-change="handleSelectionChange"

复制代码
<!-- 列定义与 Element UI 类似 -->  

在 Vue 3 中,使用

总的来说,Element UI 和 Element Plus 的 Table 组件在属性和事件方面非常相似,主要的区别在于 Vue 2 和 Vue 3 的使用方式和语法差异。在 Vue 3 中,你更可能使用 Composition API 来组织你的代码,而在 Vue 2 中,你通常会使用 Options API。

相关推荐
一只小阿乐14 分钟前
前端vue3 web端中实现拖拽功能实现列表排序
前端·vue.js·elementui·vue3·前端拖拽
AAA阿giao19 分钟前
从“操纵绳子“到“指挥木偶“:Vue3 Composition API 如何彻底改变前端开发范式
开发语言·前端·javascript·vue.js·前端框架·vue3·compositionapi
专注前端30年27 分钟前
在日常开发项目中Vue与React应该如何选择?
前端·vue.js·react.js
进击的野人1 小时前
Vue 组件与原型链:VueComponent 与 Vue 的关系解析
前端·vue.js·面试
馬致远1 小时前
Vue todoList案例 优化之本地存储
前端·javascript·vue.js
请叫我聪明鸭1 小时前
CSS实现单行、多行文本超长显示 / 不超长隐藏、悬浮窗超长展示/不超长隐藏、悬浮窗手动控制样式
前端·javascript·css
zfj3211 小时前
vscode是js开发的,为什么能支持golang java等各种语言开发
javascript·vscode·golang
GDAL1 小时前
Mapbox GL JS 核心表达式:`==` 相等判断完全教程
javascript·mapbox
炸土豆2 小时前
防抖节流里的this传递
前端·javascript
林希_Rachel_傻希希2 小时前
手写Promise--教学版本
前端·javascript·面试