From 441da7ecd798f8b51cdefc7d0f5cde54399a4ca3 Mon Sep 17 00:00:00 2001 From: RuoYi <yzz_ivy@163.com> Date: 星期三, 01 四月 2020 12:21:48 +0800 Subject: [PATCH] 添加handle控制允许拖动的元素 --- ruoyi-ui/src/views/tool/gen/editTable.vue | 18 ++++++++++++++++-- 1 files changed, 16 insertions(+), 2 deletions(-) diff --git a/ruoyi-ui/src/views/tool/gen/editTable.vue b/ruoyi-ui/src/views/tool/gen/editTable.vue index cf76a27..5f88c1a 100644 --- a/ruoyi-ui/src/views/tool/gen/editTable.vue +++ b/ruoyi-ui/src/views/tool/gen/editTable.vue @@ -5,8 +5,8 @@ <basic-info-form ref="basicInfo" :info="info" /> </el-tab-pane> <el-tab-pane label="字段信息" name="cloum"> - <el-table :data="cloumns" :max-height="tableHeight"> - <el-table-column label="序号" type="index" min-width="5%" /> + <el-table ref="dragTable" :data="cloumns" row-key="columnId" :max-height="tableHeight"> + <el-table-column label="序号" type="index" min-width="5%" class-name="allowDrag" /> <el-table-column label="字段列名" prop="columnName" @@ -126,6 +126,7 @@ import { optionselect as getDictOptionselect } from "@/api/system/dict/type"; import basicInfoForm from "./basicInfoForm"; import genInfoForm from "./genInfoForm"; +import Sortable from 'sortablejs' export default { name: "GenEdit", components: { @@ -198,6 +199,19 @@ this.$store.dispatch("tagsView/delView", this.$route); this.$router.push({ path: "/tool/gen", query: { t: Date.now()}}) } + }, + mounted() { + const el = this.$refs.dragTable.$el.querySelectorAll(".el-table__body-wrapper > table > tbody")[0]; + const sortable = Sortable.create(el, { + handle: ".allowDrag", + onEnd: evt => { + const targetRow = this.cloumns.splice(evt.oldIndex, 1)[0]; + this.cloumns.splice(evt.newIndex, 0, targetRow); + for (let index in this.cloumns) { + this.cloumns[index].sort = parseInt(index) + 1; + } + } + }); } }; </script> -- Gitblit v1.9.2