element table结合sortablejs、vuedraggable实现表格表头拖拽、隐藏显示操作

效果如下:
element table结合sortablejs、vuedraggable实现表格表头拖拽、隐藏显示操作_第1张图片
element table结合sortablejs、vuedraggable实现表格表头拖拽、隐藏显示操作_第2张图片
element table结合sortablejs、vuedraggable实现表格表头拖拽、隐藏显示操作_第3张图片

需求介绍

实现表格表头字段内容可选、顺序可调功能

技术准备

1.Sortable.js是一款轻量级的拖放排序列表的js插件
2.Draggable为基于Sortable.js的vue组件,用以实现拖拽功能。

实现过程

<draggable v-model="tableTitle" filter='.gg'>
                        <div class="drag_item"  v-for="(item, index) in tableTitle"
                            @mouseenter="mouseenter(index,item)" @mouseleave="mouseleave(index,item)" :key="index"
                            :class="[item.label=='VIN'|| item.label=='是否开通车联网'? 'gg' : '',item.isshow?'':'bag']">
                            <el-checkbox  @change="rowCorrect" style='width:100%'
                                v-model="item.isshow">{{
                                item.label }}</el-checkbox>
                            <i v-if='curIndex==index&&index>1' style='margin-top:7px;'
                                class="el-icon-s-operation"></i>
                        </div>
 </draggable>

tabletitle:表头信息
v-model:对应表头tabletitle
filter:不能拖拽项,接收class
element table结合sortablejs、vuedraggable实现表格表头拖拽、隐藏显示操作_第4张图片

element table结合sortablejs、vuedraggable实现表格表头拖拽、隐藏显示操作_第5张图片

总结,利用Draggable的拖拽能力,实现对表头对象的动态控制

你可能感兴趣的:(vue,js,vue.js,javascript,ecmascript)