1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > VUE element-ui 实现复用Table组件

VUE element-ui 实现复用Table组件

时间:2022-09-25 22:30:14

相关推荐

VUE element-ui 实现复用Table组件

web前端|js教程

element-ui,Table,组件

web前端-js教程

本文主要介绍了VUE element-ui 写个复用Table组件的示例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能帮助到大家。

家路由 源码科技公司,vscode所有插件,ubuntu终端中怎么复制粘贴,tomcat中std,sqlite 修改指定行,图标动画插件,前端框架的生命周期,缩短爬虫时间的方法,zend加密 php,河北网页seo,网站 手机自动切换,手机宣传网页模板,wordpress 单页模板lzw

饿了么的table组件功能很强大,对于项目中的各种表格基本够用,但是……个人对于它以列为单位的操作不习惯 =。=所以改成了另一种方式(我不会告诉你其实本质没变)。

医药销售管理系统程序源码,Ubuntu安装时ACp,爬虫stata简书,php小数加法,承德seo电话lzw

项目中表格较多,所以复用性最重要

最土 源码,vscode骚操作,ubuntu精简版,eclipse没有tomcat9,sqlite 删除数据库,佛山学网页设计要怎样收费,sql数据库改名,??外免费vps服务器,xiu插件,web前端页面布局框架,小红书 爬虫,php7.0,学seo优化,springboot跨域放行,火车头 系统标签,网站cms系统 开源框架,网页图片滑动箭头图片轮播代码,织梦模板写php,php后台管理系统模板,页面布局选项卡,thinkphp后台管理系统,多多淘宝客返利程序lzw

步骤一

先来个基本的表格展示

官例的tableData

tableData: [{ date: -05-02, name: 王小虎, address: 上海市普陀区金沙江路 1518 弄}, { date: -05-04, name: 王小虎, address: 上海市普陀区金沙江路 1517 弄}, { date: -05-01, name: 王小虎, address: 上海市普陀区金沙江路 1519 弄}, { date: -05-03, name: 王小虎, address: 上海市普陀区金沙江路 1516 弄}]

table.vue

步骤二

简化一下表格:

//table.vue export default{ name: able, data(){ return{ tableData:[...], tableKey: [{ name: date, value: 日期 },{ name: 姓名, value: ame },{ name: 地址, value: address }] } }}

步骤三

复用table.vue就是————给它数据的同时告诉它我的字段名呗

新建一个父组件sl_table.vue

//sl_table.vue import Table from @/components/tableexport default{ name: sl-table, data(){ return { tableData: [...] tableKey: [{ name: date, value: 日期 },{ name: 姓名, value: ame },{ name: 地址, value: address }] } }, components: { sl-table: Table }}

table.vue就更简单了

//table.vue export default{ name: able, data(){ return{} }, props:[ ableData, ableKey],}

步骤四

可以根据需求修改table的形式

列宽度

这个较为简单,可以直接加个属性

//sl_table.vue... data(){ return { tableData: [...] tableKey: [{ name: date, value: 日期, width: 80 },{ name: 姓名, value: ame, width: 80 },{ name: 地址, value: address }] } },...

table.vue

//table.vue......

自定义模板列

如果我们需要告诉组件哪个是自定义的列,所以添加一个属性operate

table.vue

//sl_table.vue {{ scope.row.date | DateFilter }} ... data(){ return { tableData: [...] tableKey: [{name: date,value: 日期,operate: true },{name: 姓名,value: ame,operate: false },{name: 地址,value: address,operate: false }] } }, filters: { DateFilter(){...} }...

表格展开行

类似宽度,只要sl_table.vue传入一个isExpand的属性。这里加个每次只能展开一行的效果:

//sl_table.vue {{...expand something}} ...

table.vue

//table.vue ...props: [ ableData, ableKey,isExpand,isExpandOnly],methods: { handleExpand(row,is_expand){ if(this.isExpand && this.isExpandOnly){ this.$refs.raw_table.store.states.expandRows = expanded ? [row] : [] } }}

其他的(排序、多选)操作也是类似添加。。。多不赘述。

使用DataTable插件实现异步加载数据详解

HTML的table鼠标拖拽排序该如何实现

JS实现table表格固定表头且表头随横向滚动而滚动

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。