element tree组件回显

该博客介绍了如何在Vue.js应用中利用Element UI的树形组件(el-tree)进行权限管理。通过设置节点属性,如`default-expand-all`和`check-on-click-node`,实现全展开及点击节点选中功能。同时,`data`和`default-checked-keys`用于数据绑定和初始化已选中项。在`getMenuRole`方法中获取并设置回显的权限数据,而在`submit`方法中获取选中节点并提交更新的权限列表。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

HTML部分

  <el-tree
       :data="data"
       show-checkbox
       default-expand-all
       node-key="id"
       ref="tree"
       highlight-current
       :props="defaultProps"
       :default-checked-keys="resourceCheckedKey"
        check-on-click-node> </el-tree>

JS部分

  data() {
        return {
            dataList: [],
            data: null, //全部菜单
            defaultProps: {
                children: 'childNode',
                label: 'text',
                id: 'id'
            },//配置子节点属性
            resourceCheckedKey: []//需要回显的数据
        };
    },


methods:{
    //获取需要回显的数据
    async getMenuRole() {
            let { data: res } = await menuRole({ roleId: this.id });
            if (res.code == '200') {
                this.resourceCheckedKey = res.data.map((e) => {
                    return e.menuId_ButtonId;
                });

            }
        },
    //提交新数据
   async submit() {
            let arr = this.$refs.tree.getCheckedNodes();//获取已经选中的节点
            let arr1 = arr.map((e) => {
                return {
                    menuId_ButtonId: e.id,
                    type: e.cacheObject.classify
                };
            });
            let obj = {
                roleId: this.id,
                menuList: arr1
            };
            let { data: res } = await setMenuRole(obj);
            if (res.code == '200') this.returnManage(true)
        },


}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值