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

el-select:有关多选,options选项值不包含绑定值的回显问题

这里以element-plus举例:

<el-select v-model="value" multiple placeholder="Select" style="width: 240px">
   <el-option
      v-for="item in options"
      :key="item.value"
      :label="item.label"
       :value="item.value"
    />
</el-select>

//选项值
const options = [
  {
    value: "1",
    label: "Option1",
  },
  {
    value: "2",
    label: "Option2",
  },
  {
    value: "3",
    label: "Option3",
  },
  {
    value: "4",
    label: "Option4",
  },
  {
    value: "5",
    label: "Option5",
  },
];

//绑定值
const value = ref(["1", "6", "8"]);

可以看到,我当前的options中并不存在value值为6和8的选项,所以页面就出现了这种场景 ,显然这样是不合适的;

 

解决办法:

合并选项,构建新的选项列表;

假设这是后台给我们返回过来的数组对象,那么我们接下来需要做的操作就是将 resp 与 options进行整合一下;

const getOptions = computed(() => uniqBy([...options, ...resp], "value"));

将options和resp进行合并,后利用lodash-es的uniqBy方法,以value为标准,进行去重;

<el-select v-model="value" multiple placeholder="Select" style="width: 240px" size="large">
   <el-option
      v-for="item in getOptions"
      :key="item.value"
      :label="item.label"
      :value="item.value"
    />
 </el-select>

 

思路就是这个思路,具体实现看各位的业务需求; 

相关文章:

  • AI前端开发技能提升与ScriptEcho:拥抱智能时代的新机遇
  • 基于Java EE“陕西农特产品”网络交易平台设计与实现(源码+文档)
  • 乾崑版再添两大版型,全新岚图梦想家推动高阶智驾平权
  • 为什么视频编码是对YUV而不是RGB
  • 零基础学python(持续更新中。。。)
  • 市场波动中的数据分析与策略优化
  • 寒假总结。
  • JAVA中常用类型
  • 网页五子棋——对战前端
  • Qt:容器类控件
  • 51c深度学习~合集1
  • jdk从1.7升级为1.8需要注意什么
  • uniapp基于JSSDK 开发微信支付(php后端)
  • 23种设计模式之《单例模式(Singleton)》在c#中的应用及理解
  • BUUCTF [CISCN 2019 初赛]Love Math
  • ONNX Runtime 与 CUDA、cuDNN 的版本对应
  • 【JavaScript】《JavaScript高级程序设计 (第4版) 》笔记-Chapter17-事件
  • 【大模型】DeepSeek 的人工智能发展之路
  • 【SpringBoot教程】Spring Boot + MySQL + Druid连接池整合教程
  • 懒人精灵本地离线卡密验证系统教程(不联网、安全稳定、省钱、永久免费、无任何限制)
  • 王征、解宁元、牛恺任西安市副市长
  • 前四个月社会融资规模增量累计为16.34万亿元,比上年同期多3.61万亿元
  • 将人工智能送上太空,我国太空计算卫星星座成功发射
  • 视频|王弘治:王太后,“先天宫斗圣体”?
  • 刘永明|在从普及到提高中发展新大众文艺
  • 时隔4年多,这一次普京和泽连斯基能见面吗?