上次做的那個是個非樹狀的,這次我看從后台傳過來的數據是樹形的數據,前面的那個方法顯然已經不適用了
先看做成的效果:

https://ext.dcloud.net.cn/plugin?id=1000
方法如下:
首先我們需要用到一個組件,tree樹組件
這個組件和element中的el-tree差不多,用法上有一點點區別
下面就直接貼代碼了
<template>
<ly-tree :tree-data="menuList"
ref="tree"
node-key="id"
accordion
showCheckbox
:checkStrictly="true"
:expandOnCheckNode="false"
:props="permissionProps"
:defaultCheckedKeys="selectedID"
@check="selectMenu"
>
</ly-tree>
</template>
其中: node-key=“id” 是必須要寫的,組件的說明文檔上寫的很清楚,不再贅述
:defaultCheckedKeys=“selectedID” 為后台默認選中項的id值,放到一個數組里面了
:props=“permissionProps”: 在ruturn{}中定義:
permissionProps: {
children: 'children',
label: 'menuName'
},
根據自身的數據進行修改即可
@check=“selectMenu”:是把選中的項的值放到數組里面的方法
selectMenu() {
this.checkEquip = this.$refs.tree.getCheckedNodes(false, true)
this.selectList = []
},
然后傳到后台就行了
完事,找了好久,uniapp原有組件沒辦法解決,所以只能找組件了
————————————————
版權聲明:本文為CSDN博主「田不甜 tbt」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_45959912/article/details/113308229
