当前位置: 首页 > news >正文

Vue: 多个el-select不能重复选择相同属性

一、场景

1.需求: 用户可自由选择需要修改的对象并同时修改多个属性,需要校验修改对象不能重复选择,但是可供修改属性是固定的

2.目标效果:
在这里插入图片描述

二、实现

1.主要代码:

<template><el-selectv-model="selValue":size="$attrs.size"placeholder="请选择"@change="canidateChange(scope)"><el-optionv-for="(selc, index) in SelectColumns":key="index + selc.item.key":label="selc.item.title":value="selc.item.key":disabled="selc.item.disabled"></el-option></el-select></template>
<script>
export default{name:"",data(){const SelectColumns = [{item: {key: "priceType",title: "属性1",},attr: {is: "el-select",dictName: "sys_price_type",}},{item: {key: "assignSupplierName",title: "属性2",// key: "supplierName",},attr: {readonly: true,is: "el-input",},},{item: {key: "input1",title: "属性3",},attr: {is: "el-input",}},{item: {key: "input2",title: "属性4",},attr: {is: "el-input",}},].map(({ item, attr }) => {return {item: { ...item },attr: {...attr,disabled: false,}}});return {SelectColumns:SelectColumns,}},methods:{canidateChange(prop) {let { $index, row } = prop;this.SelectColumns = this.SelectColumns.map(({ item, attr }) => {// 重置item.disabled = false;let index = this.innerValue.findIndex((inVal) => inVal.candidate === item.key);// 存在if (index !== -1) {item.disabled = true;}return {item,attr,};});}}
}
</script>
http://www.lryc.cn/news/272945.html

相关文章:

  • 金色麦芒的2023
  • java设计模式学习之【策略模式】
  • Mybatis SQL构建器类 - SqlBuilder and SelectBuilder (已经废弃)
  • 【Linux】不常用命令记录
  • 【docker】安装docker环境并启动容器
  • AIOps探索 | 基于大模型构建高效的运维知识及智能问答平台(2)案例分享
  • 【ESP32接入国产大模型之文心一言】
  • 保湿剂,预计2026年市场规模将达到约230亿美元
  • CodeWhisperer:编码世界中的声音启迪者
  • golang学习专栏
  • el-table表格动态添加列。多组数据拼接和多层级数据的处理
  • ThinkPHP6.0任意文件上传 PHPSESSION 已亲自复现
  • 短说社区运营的使用工具分享(一)
  • 关于.gitignore文件
  • Cell 文章图复现
  • 只需一招彻底解决SOLIDWORKS不显示缩略图预览
  • nccl 源码分析 从 ncclAllReduce 的执行开始认识nccl源代码
  • 仿照AirDrop(隔空投送)优雅地在局域网中传输文件
  • 【PHP】TP5.0及Fastadmin中将查询数据返回对象转为数组
  • 大公司里怎样开发和部署前端代码?
  • API接口:原理、设计与实践
  • 2023年TIOBE指数TOP50的编程语言写“Hello World!”
  • spring、springmvc、springboot、springcloud简介
  • 立仪科技光谱共焦位移传感器:应用领域的广泛性
  • neo4j图数据库安装和测试
  • 爬取豆瓣电影top250的电影名称(完整代码与解释)
  • tidb 集成 flyway 报错 denied to user for table global_variables
  • 很实用的ChatGPT网站—在线编程模块增补篇
  • A股风格因子看板 (2024.01第01期)
  • 基于gamma矫正的照片亮度调整(python和opencv实现)