禁启用,只控制本行,不影响其他行

element 只控制本行,不影响其他行(本次笔记包括:el-table和 el-checkbox)

需求:在操作本行的禁启用按钮,不影响其它行的。el-table

在这里插入图片描述
el-table的禁启用,代码如下:

forbidBtn(row,currentIndex){ //currentIndex为本行的index,控制不同行的
      this.$set(this.UserManagementTableData[currentIndex],'isEdit',true);
      this.$set(this.UserManagementTableData[currentIndex],'isForbid',false);
    },

原文链接,在此,不在赘述。

根据el-checkbox 的选中状态,控制el-checkbox-group的禁启用状态。

<div class="checkItem" v-for="(item,index) in citiesFor" :key="item.id">
     <el-checkbox class="BothCheck" v-model="userIds" :label="item.id" :value="item.id" :key="item.id" @change="getAllUserIds($event,index)">{{item.typeName}}</el-checkbox>
     <el-checkbox-group v-model="checkedCities1" @change="handleCheckedCitiesChange1()">
        <el-checkbox :disabled="item.isDisabled" class="singleCheck" v-for="children in item.children" :label="children.id" :key="children.id">{{children.name}}</el-checkbox>
     </el-checkbox-group>
</div>

data:

const cityOptions=[
  {
    typeName:'首页',
    id: 30,
    isDisabled:true,///<-----------重要
    children:[
      {name:'查看公告',id:36}
    ]
  },
  {
    typeName:'成果库',
    id:31,
    isDisabled:true,
    children:[
      {name:'查看成果列表',id:37},
      {name:'创建成果',id:38},
      {name:'显示文库',id:39},
      {name:'创建文库',id:40},
      {name:'进入文库',id:41},
      {name:'更新文件',id:42},
      {name:'操作文件',id:43},
    ]
  },
  {
    typeName:'我的成果',
    id:32,
    isDisabled:true,
    children:[
      {name:'查看成果列表',id:44},
      {name:'创建成果',id:45},
      {name:'显示文库',id:46},
      {name:'创建文库',id:47},
      {name:'进入文库',id:48},
      {name:'更新文件',id:49},
      {name:'操作文件',id:50},
    ]
  },
  {
    typeName:'授权管理',
    id:33,
    isDisabled:true,
    children:[
      {name:'查看授权列表',id:51},
      {name:'复制分享链接',id:52},
      {name:'终止分享',id:53},
    ]
  },
  {
    typeName:'文件操作',
    id:34,
    isDisabled:true,
    children:[
      {name:'预览',id:54},
      {name:'下载',id:55},
      {name:'重命名',id:56},
      {name:'分享',id:57},
      {name:'进入分享链接(被禁止后,不能查看分享文件)',id:58},
    ]
  },
  {
    typeName:'个人中心',
    id:35,
    isDisabled:true,
    children:[
      {name:'更改昵称',id:59},
      {name:'更改密码',id:60},
      {name:'查看日志',id:61},
    ]
  }
],
export default {
  data() {
    return {
			citiesFor:cityOptions,
		}
	}
}
 getAllUserIds(event,index){
		 if(event){
		    this.$set(this.citiesFor[index],'isDisabled',false)
		  }else{
		    this.$set(this.citiesFor[index],'isDisabled',true)
		}
    },

基本实现功能和el-table差不多。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值