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/system/menu/index.vue | 41 ++++++++++++++++++++++++++++------------- 1 files changed, 28 insertions(+), 13 deletions(-) diff --git a/ruoyi-ui/src/views/system/menu/index.vue b/ruoyi-ui/src/views/system/menu/index.vue index b1a5cdb..5fac75f 100644 --- a/ruoyi-ui/src/views/system/menu/index.vue +++ b/ruoyi-ui/src/views/system/menu/index.vue @@ -32,22 +32,22 @@ row-key="menuId" :tree-props="{children: 'children', hasChildren: 'hasChildren'}" > - <el-table-column prop="menuName" label="鑿滃崟鍚嶇О" :show-overflow-tooltip="true" width="130px"></el-table-column> - <el-table-column prop="icon" label="鍥炬爣" align="center" width="100px"> + <el-table-column prop="menuName" label="鑿滃崟鍚嶇О" :show-overflow-tooltip="true" width="160"></el-table-column> + <el-table-column prop="icon" label="鍥炬爣" align="center" width="100"> <template slot-scope="scope"> <svg-icon :icon-class="scope.row.icon" /> </template> </el-table-column> - <el-table-column prop="orderNum" label="鎺掑簭" width="60px"></el-table-column> - <el-table-column prop="perms" label="鏉冮檺鏍囪瘑" width="130px" :show-overflow-tooltip="true"></el-table-column> - <el-table-column prop="component" label="缁勪欢璺緞" width="180px" :show-overflow-tooltip="true"></el-table-column> - <el-table-column prop="visible" label="鍙" :formatter="visibleFormat" width="80px"></el-table-column> - <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime" width="180"> + <el-table-column prop="orderNum" label="鎺掑簭" width="60"></el-table-column> + <el-table-column prop="perms" label="鏉冮檺鏍囪瘑" :show-overflow-tooltip="true"></el-table-column> + <el-table-column prop="component" label="缁勪欢璺緞" :show-overflow-tooltip="true"></el-table-column> + <el-table-column prop="visible" label="鍙" :formatter="visibleFormat" width="80"></el-table-column> + <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime"> <template slot-scope="scope"> <span>{{ parseTime(scope.row.createTime) }}</span> </template> </el-table-column> - <el-table-column label="鎿嶄綔" align="center" width="180" class-name="small-padding fixed-width"> + <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width"> <template slot-scope="scope"> <el-button size="mini" type="text" @@ -82,6 +82,7 @@ <treeselect v-model="form.parentId" :options="menuOptions" + :normalizer="normalizer" :show-count="true" placeholder="閫夋嫨涓婄骇鑿滃崟" /> @@ -173,7 +174,7 @@ </template> <script> -import { listMenu, getMenu, treeselect, delMenu, addMenu, updateMenu } from "@/api/system/menu"; +import { listMenu, getMenu, delMenu, addMenu, updateMenu } from "@/api/system/menu"; import Treeselect from "@riophae/vue-treeselect"; import "@riophae/vue-treeselect/dist/vue-treeselect.css"; import IconSelect from "@/components/IconSelect"; @@ -209,6 +210,9 @@ ], orderNum: [ { required: true, message: "鑿滃崟椤哄簭涓嶈兘涓虹┖", trigger: "blur" } + ], + path: [ + { required: true, message: "璺敱鍦板潃涓嶈兘涓虹┖", trigger: "blur" } ] } }; @@ -228,16 +232,27 @@ getList() { this.loading = true; listMenu(this.queryParams).then(response => { - this.menuList = response.data; + this.menuList = this.handleTree(response.data, "menuId"); this.loading = false; }); }, + /** 杞崲鑿滃崟鏁版嵁缁撴瀯 */ + normalizer(node) { + if (node.children && !node.children.length) { + delete node.children; + } + return { + id: node.menuId, + label: node.menuName, + children: node.children + }; + }, /** 鏌ヨ鑿滃崟涓嬫媺鏍戠粨鏋� */ getTreeselect() { - treeselect().then(response => { + listMenu().then(response => { this.menuOptions = []; - const menu = { id: 0, label: '涓荤被鐩�', children: [] }; - menu.children = response.data; + const menu = { menuId: 0, menuName: '涓荤被鐩�', children: [] }; + menu.children = this.handleTree(response.data, "menuId"); this.menuOptions.push(menu); }); }, -- Gitblit v1.9.3