弹框用户勾选过得置灰 或者不显示

弹框用户勾选过得置灰 或者不显示

添加 :disabled="row.disabled"

复制代码
        <el-table-column label="名称" width="300">
            <template #default="{ row }">
              <el-radio
              :disabled="row.disabled"
                :label="row.coursesName"
                v-model="selectedRowCourse"
                @change="onCourseChange(row)"
              />
            </template>
          </el-table-column>

一.置灰

每次弹框打开的时候调接口进行数据处理

复制代码
const getData = () => {
  let params = {
    id:'111111
  };
  singleCourseSearch(params).then((res) => {
    // courseData.value = res.data.items;
    courseTotal.value = res.data.total;
	
    let  formattedDate=res.data.items
    const idSet = new Set(courseForm.courses.map(item => item.id));
    let courseData11 = formattedDate.map(item => ({
        ...item,
        disabled: idSet.has(item.idGenerator)
      }));
    courseData.value = courseData11
  });

1.拿到接口的数据

复制代码
 let  formattedDate=res.data.items

2.courseForm.courses【新增数据都会push进去】取出所有id数据

复制代码
const idSet = new Set(courseForm.courses.map(item => item.id));

3.formattedDate循环添加disabled,只有接口某个数据与新增的数据的id相同,就添加disabled属性

复制代码
let courseData11 = formattedDate.map(item => ({
    ...item,
    disabled: idSet.has(item.idGenerator)
  }));
courseData.value = courseData11

二:直接filter删除

1.拿到接口的数据

复制代码
let  formattedDate=res.data.items

2.courseForm.courses【新增数据都会push进去】取出所有id数据

复制代码
const idSet = new Set(courseForm.courses.map(item => item.id));

3.formattedDate接口的数据idGenerator与新增的数据的id进行比较,如果有的话就筛选掉

复制代码
  let courseData11 = formattedDate.filter(item => !idSet.has(item.idGenerator));
  courseData.value = courseData11
相关推荐
未来之窗软件服务1 小时前
自己写算法(九)网页数字动画函数——东方仙盟化神期
前端·javascript·算法·仙盟创梦ide·东方仙盟·东方仙盟算法
程序员小凯1 小时前
Spring Boot测试框架详解
java·spring boot·后端
豐儀麟阁贵2 小时前
基本数据类型
java·算法
_extraordinary_2 小时前
Java SpringMVC(二) --- 响应,综合性练习
java·开发语言
程序员 Harry2 小时前
深度解析:使用ZIP流式读取大型PPTX文件的最佳实践
java
fanged3 小时前
天马G前端的使用
android·游戏
wxweven3 小时前
校招面试官揭秘:我们到底在寻找什么样的技术人才?
java·面试·校招
陈陈爱java4 小时前
新知识点背诵
java
失散134 小时前
分布式专题——39 RocketMQ客户端编程模型
java·分布式·架构·rocketmq
C+ 安口木4 小时前
vue中监听window某个属性被添加或值的变化
前端·javascript·vue.js