vue3.0实现数组分组效果
- 效果图


-
vue3.0+element-plus
-
拖拽效果 vue-draggable-plus
-
父组件使用
-
子组件 ColumnDialog/index.vue
<el-input placeholder="请选择"
readonly
@click="onVisible"
v-model="valueName" />
<el-checkbox :indeterminate="indeterminate"
@change="onCheckAllChange"
v-model="checkAll">
全选
<el-button size="default"
@click="handleAddGroup">
新增分组
<vue-draggable ghostClass="custom_drag_class"
handle=".draggable_column"
@end="onEndDraggable"
@start="isDraggable = true"
v-model="currentContent">
{{ item.title }}
<el-button icon="Edit"
size="small"
title="重命名"
@click="editField(index)"/>
<el-button icon="Delete"
size="small"
title="解散分组"
@click="deleteField(index)"/>
<el-checkbox @change="e => onChangeItem(e,ele)"
v-model="ele.selectFlag">
{{ ele.title }}
<el-checkbox @change="e => onChangeItem(e,item)"
v-model="item.selectFlag">
{{ item.title }}
<template #footer>
<el-button @click="closeFather">取消
<el-button type="primary"
@click="onSubmit">保存
<el-dialog :close-on-click-modal="true"
title="新增分组"
width="600px"
@close="closeGroupModal"
v-model="groupModalVisible">
<template #footer>
<el-button @click="closeGroupModal">取消
<el-button type="primary"
@click="createGroup">确认

浙公网安备 33010602011771号