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

在Vue 3中,el-select循环el-option的常见踩坑点,value值绑定对象类型?选中效果不准确?

在Vue 3中,el-select 组件是来自 Element Plus UI 库的一部分。
如果你想要设置默认选中的选项,你可以使用 v-model 来绑定选中的值。如果你想要在某个时刻让某个选项显示为已选中,可以设置对应的值到 v-model 绑定的数据。

<template><el-select v-model="selectedValue" placeholder="请选择"><el-optionv-for="item in options":key="item.value":label="item.label":value="item.value"></el-option></el-select>
</template><script>
import { ref } from 'vue';
export default {setup() {const selectedValue = ref(''); // 绑定的选中值const options = ref([ // 下拉选项数据{ label: '选项1', value: 'option1' },{ label: '选项2', value: 'option2' },{ label: '选项3', value: 'option3' }]);// 默认选中第一个选项selectedValue.value = options.value[0].value;}
};
</script>

实际开发场景使用中,有时候循环的options数据结构比较复杂 嵌套层次也比较多时 ,
如果不注意value的值绑定的是个对象类型,会发现每个选项都是选中效果,这显然是不对的

当el-option的value值是对象类型时,你需要确保v-model绑定的值也是相同类型的对象,并且它们可以通过引用或者深度比较(例如,通过比较对象的属性和值)来匹配。在Vue中,对于对象类型的比较,Vue会使用===操作符,这意味着两个对象必须是同一个引用才会被认为是相等的。

如果你的v-model绑定的值是一个对象,并且你想要在el-option列表中选择一个与这个对象相匹配的选项,你需要确保列表中的每el-option的value都是对应对象的引用,或者你可以提供一个方法来比较两个对象是否相等(这通常更复杂且不推荐)。

不过,更常见的做法是使用对象的某个唯一属性(如ID)作为el-option的value,而不是整个对象
这样,v-model绑定的值就会是这个唯一属性,而不是整个对象。这样做更简单,也更符合Vue的响应式系统。
下面是一个使用对象的ID作为value的例子:
使用 :value=“item.value.id” 而不是:value=“item.value”

 const options = ref([ // 下拉选项数据,每个选项有一个唯一的id和一个label{label: '选项1' ,value:{id:1}},{ label: '选项2' ,value:{id:2}},{ label: '选项3' ,value:{id:3}},]);<el-select v-model="selectedId" placeholder="请选择"><el-optionv-for="item in options":key="item.id":label="item.label":value="item.value.id"></el-option></el-select>

当你value的值绑定的是个对象类型,发现每个选项都是选中效果
同时F12 时,你发现每个el-option都有aria-selected=“true”,这可能是由于value和v-model值得类型不一致且不等,此处再次建议 value的值近量不要绑定一个对象类型的值,

aria-selected=“true” 是一个ARIA (Accessible Rich Internet Applications) 属性,它用于表示当前选中的选项。并且该选项会添加类名‘selected’>

在ElementPlus或其他类似的UI库中,每个el-option标签上不应该在初始状态下都拥有aria-selected="true"属性,因为这意味着每个选项都被认为是选中状态,这显然是不正确的。一个下拉列表或选择器el-select中应该只有一个选项被选中,并且只有这个选项应该拥有aria-selected="true"属性。

如果以上都没问题再查看其他原因 如下:
1.Bug或错误实现:可能是Element Plus库的一个bug,或者是你使用的某个版本中的错误实现。你可以尝试更新到最新版本,或者查看Element Plus的issue追踪器,看看是否有人报告了类似的问题。

2.自定义代码或样式:可能你的代码或样式中不小心给每个都添加了aria-selected=“true”。检查你的模板、计算属性、方法或全局样式,确保没有错误地设置这个属性。

3.第三方插件或扩展:如果你使用了某些浏览器插件或开发者工具扩展,它们可能会干扰DOM并错误地添加属性。尝试在无痕模式或禁用插件的情况下查看页面,看看问题是否仍然存在。

相关文章:

在Vue 3中,el-select循环el-option的常见踩坑点,value值绑定对象类型?选中效果不准确?

在Vue 3中&#xff0c;el-select 组件是来自 Element Plus UI 库的一部分。 如果你想要设置默认选中的选项&#xff0c;你可以使用 v-model 来绑定选中的值。如果你想要在某个时刻让某个选项显示为已选中&#xff0c;可以设置对应的值到 v-model 绑定的数据。 <template>…...

Qt实现单例模式:Q_GLOBAL_STATIC和Q_GLOBAL_STATIC_WITH_ARGS

目录 1.引言 2.了解Q_GLOBAL_STATIC 3.了解Q_GLOBAL_STATIC_WITH_ARGS 4.实现原理 4.1.对象的创建 4.2.QGlobalStatic 4.3.宏定义实现 4.4.注意事项 5.总结 1.引言 设计模式之单例模式-CSDN博客 所谓的全局静态对象&#xff0c;大多是在单例类中所见&#xff0c;在之前…...

通过nginx转发后应用偶发502bad gateway

序言 学习了一些东西&#xff0c;如何才是真正自己能用的呢&#xff1f;好像就是看自己的潜意识的反应&#xff0c;例如解决了一个问题&#xff0c;那么下次再碰到类似的问题&#xff0c;能直接下意识的去找到对应的信息&#xff0c;从而解决&#xff0c;而不是和第一次碰到一样…...

linux中如何进行yum源的挂载

linux中如何进行yum源的挂载 ​ 1.首先创建目录[rootserver /]# mkdir /rhel92.使用mount命令进行、dev/cdrom/的镜像文件进行挂载[rootserver /]# mount /dev/cdrom /rhel9/ ​ 注意&#xff1a;此时设立的是临时命令。重启后则失效&#xff0c;若想在下次开启后仍然挂载&a…...

ffmpeg的部署踩坑及简单使用方式

ffmpeg的使用方式有以下几种: 使用原生安装包 直接在ffmpeg官网上下载安装该软件,加入到环境变量中就可以使用了 优点:简单,灵活,代码中也不用添加其他第三方的包 缺点:需要手动安装ffmpeg,这点比较麻烦 部署-windows 在windows环境下,有时就算加入到了环境变量,…...

misc刷题记录2[陇剑杯 2021]

[陇剑杯 2021]webshell (1)单位网站被黑客挂马&#xff0c;请您从流量中分析出webshell&#xff0c;进行回答&#xff1a; 黑客登录系统使用的密码是_____________。得到的flag请使用NSSCTF{}格式提交。 这里我的思路是&#xff0c;既然要选择的时间段是黑客登录网站以后&…...

AI发展面临的问题? —— AI对创造的重新定义

一、AI的问题描述 AI与数据安全问题&#xff1a;随着AI技术的发展和应用&#xff0c;数据安全问题日益突出。AI模型训练依赖于大量数据&#xff0c;而这些数据中可能包含个人隐私、商业秘密等敏感信息。如果数据在采集、存储、使用过程中处理不当&#xff0c;可能导致数据泄露或…...

k8s学习--OpenKruise详细解释以及原地升级及全链路灰度发布方案

文章目录 OpenKruise简介OpenKruise来源OpenKruise是什么&#xff1f;核心组件有什么&#xff1f;有什么特性和优势&#xff1f;适用于什么场景&#xff1f; 什么是OpenKruise的原地升级原地升级的关键特性使用原地升级的组件原地升级的工作原理 应用环境一、OpenKruise部署1.安…...

上海亚商投顾:沪指缩量调整 PCB概念股持续爆发

上海亚商投顾前言&#xff1a;无惧大盘涨跌&#xff0c;解密龙虎榜资金&#xff0c;跟踪一线游资和机构资金动向&#xff0c;识别短期热点和强势个股。 一.市场情绪 大小指数昨日走势分化&#xff0c;沪指全天震荡调整&#xff0c;创业板指午后涨超1%。消费电子板块全天强势&a…...

QT属性系统,简单属性功能快速实现 QT属性的简单理解 属性学习如此简单 一文就能读懂QT属性 QT属性最简单的学习

4.4 属性系统 Qt 元对象系统最主要的功能是实现信号和槽机制&#xff0c;当然也有其他功能&#xff0c;就是支持属性系统。有些高级语言通过编译器的 __property 或者 [property] 等关键字实现属性系统&#xff0c;用于提供对成员变量的访问权限&#xff0c;Qt 则通过自己的元对…...

【IEEE出版丨EI检索】2024新型电力系统与电力电子国际会议(NPSPE 2024)

2024新型电力系统与电力电子国际会议&#xff08;NPSPE 2024&#xff09;将于8月16日至18日在中国大连举行&#xff0c;本届大会致力于为相关领域的专家和学者提供一个探讨行业热点问题&#xff0c;促进科技进步&#xff0c;增加科研合作的平台。本届大会涵盖新型电力系统和电力…...

【Netty】nio阻塞非阻塞Selector

阻塞VS非阻塞 阻塞 阻塞模式下&#xff0c;相关方法都会导致线程暂停。 ServerSocketChannel.accept() 会在没有建立连接的时候让线程暂停 SocketChannel.read()会在没有数据的时候让线程暂停。 阻塞的表现就是线程暂停了&#xff0c;暂停期间不会占用CPU&#xff0c;但线程…...

ES 操作

1、删除索引的所有记录 curl -X POST "localhost:9200/<index-name>/_delete_by_query" -H Content-Type: application/json -d {"query": {"match_all": {}} }POST /content_erp_nlp_help/_delete_by_query { "query": { &quo…...

uniapp如何实现跳转

在 UniApp 中&#xff0c;页面跳转主要可以通过两种方式实现&#xff1a;使用 <navigator> 组件和调用 UniApp 提供的导航 API。以下是这两种方式的详细说明&#xff1a; 1. 使用 <navigator> 组件 <navigator> 组件允许你在页面上创建一个可点击的元素&am…...

Stable-Diffusion-WebUI 常用提示词插件

SixGod提示词插件 SixGod提示词插件可以帮助用户快速生成逼真、有创意的图像。其中包含&#xff0c;清空正向提示词”和“清空负向提示词、提示词起手式包含人物、服饰、人物发型等各个维度的提示词、一键清除正面提示词与负面提示词、随机灵感关键词、提示词分类组合随机、动…...

单片机 PWM输入捕获【学习记录】

前言 学习是永无止境的&#xff0c;就算之前学过的东西再次学习一遍也能狗学习到很多东西&#xff0c;输入捕获很早之前就用过了&#xff0c;但是仅仅是照搬例程没有去进行理解。温故而知新&#xff01; 定时器 定时器简介 定时器的分类 高级定时器 通用定时器 基本定时器…...

3.1、前端异步编程(超详细手写实现Promise;实现all、race、allSettled、any;async/await的使用)

前端异步编程规范 Promise介绍手写Promise&#xff08;resolve&#xff0c;reject&#xff09;手写Promise&#xff08;then&#xff09;Promise相关 API实现allraceallSettledany async/await和Promise的关系async/await的使用 Promise介绍 Promise是一个类&#xff0c;可以翻…...

3.1. 马氏链-马氏链的定义和示例

马氏链的定义和示例 马氏链的定义和示例1. 马氏链的定义2. 马氏链的示例2.1. 随机游走2.2. 分支过程2.3. Ehrenfest chain2.4. 遗传模型2.5. M/G/1 队列 马氏链的定义和示例 1. 马氏链的定义 对于可数状态空间的马氏链, 马氏性指的是给定当前状态, 其他过去的状态与未来的预测…...

红利之外的A股底仓选择:A50

内容提要 华泰证券指出&#xff0c;当前指数层面下行风险不大&#xff0c;市场再入震荡期下&#xff0c;可关注三条配置线索&#xff1a;1&#xff09;A50为代表的产业巨头&#xff1b;2&#xff09;以家电/食饮/物流/出版为代表的稳健消费龙头&#xff0c;3&#xff09;消费电…...

wondershaper 一款限制 linux 服务器网卡级别的带宽工具

文章目录 一、关于wondershaper二、文档链接三、源码下载四、限流测试五、常见报错1. /usr/local/sbin/wondershaper: line 145: tc: command not found2. Failed to download metadata for repo ‘appstream‘: Cannot prepare internal mirrorlist: No URLs.. 一、关于wonder…...

OpenClaw技能市场巡礼:GLM-4.7-Flash支持的10个实用自动化模块

OpenClaw技能市场巡礼&#xff1a;GLM-4.7-Flash支持的10个实用自动化模块 1. 为什么需要关注OpenClaw技能市场&#xff1f; 去年冬天&#xff0c;我花了整整两周时间手动整理公司邮箱里堆积如山的会议记录和客户邮件。每天重复着"下载附件-重命名-分类存储"的机械…...

企业级微信自动化框架:WeChatFerry的技术实现与商业价值分析

企业级微信自动化框架&#xff1a;WeChatFerry的技术实现与商业价值分析 【免费下载链接】WeChatFerry 微信逆向&#xff0c;微信机器人&#xff0c;可接入 ChatGPT、ChatGLM、讯飞星火、Tigerbot等大模型。Hook WeChat. 项目地址: https://gitcode.com/GitHub_Trending/we/W…...

保姆级教程:用ONNXRuntime对比YOLO11的PyTorch与ONNX输出差异

保姆级教程&#xff1a;用ONNXRuntime对比YOLO11的PyTorch与ONNX输出差异 在模型部署的实践中&#xff0c;PyTorch到ONNX的转换是常见需求&#xff0c;但转换后的模型输出是否与原始模型一致却容易被忽视。本文将手把手教你如何通过ONNXRuntime对比YOLO11模型在PyTorch和ONNX两…...

ThreadX信号量五大使用误区盘点:你的RTOS同步机制真的安全吗?

ThreadX信号量五大使用误区盘点&#xff1a;你的RTOS同步机制真的安全吗&#xff1f; 在嵌入式实时系统开发中&#xff0c;信号量作为最基础的同步机制之一&#xff0c;其重要性不言而喻。ThreadX作为一款商业级RTOS&#xff0c;其信号量实现看似简单&#xff0c;却暗藏诸多陷阱…...

深入解析W25Q64:SPI接口下的高效存储解决方案

1. W25Q64闪存芯片初探&#xff1a;为什么它成为嵌入式开发的首选&#xff1f; 第一次接触W25Q64是在五年前的一个智能家居项目里&#xff0c;当时需要存储大量设备配置和日志数据。这个指甲盖大小的芯片让我印象深刻——它不仅容量达到8MB&#xff0c;还能在断电后完整保存数据…...

大模型应用开发:后端开发者入门指南

目录 模型部署 开放大模型服务 注册账号 申请API_KEY 体验模型 本地部署 下载安装ollama 搜索模型 运行模型 调用大模型 大模型接口规范 接口说明 提示词角色 会话记忆问题 调用大模型 大模型应用 传统应用 核心特点 擅长领域 不擅长领域 AI大模型 核心特…...

Ubuntu 20.04 下 Vitis 2021.2 离线安装全记录:从77G压缩包到环境变量配置(附磁盘分区建议)

Ubuntu 20.04环境下Vitis 2021.2超大型工程软件部署实战指南 当77GB的Vitis安装包静静躺在硬盘角落时&#xff0c;任何工程师都会意识到这将是一场硬仗。不同于常规软件安装&#xff0c;FPGA开发环境的部署更像是在操作系统中搭建另一个操作系统——它需要精确的磁盘规划、严格…...

EasyExcel导出日期变#####?3分钟搞定列宽自适应问题(附@ColumnWidth注解详解)

EasyExcel导出日期变#####&#xff1f;3分钟搞定列宽自适应问题&#xff08;附ColumnWidth注解详解&#xff09; 当你用EasyExcel导出数据时&#xff0c;突然发现Excel里本该显示日期的单元格变成了一串"#####"&#xff0c;这种场景对Java开发者来说再熟悉不过了。别…...

YOLO12模型API接口调用指南:快速集成到Flask/Django项目

YOLO12模型API接口调用指南&#xff1a;快速集成到Flask/Django项目 1. 引言 如果你正在开发一个需要“看懂”图片内容的Web应用&#xff0c;比如智能相册自动打标签、电商平台商品识别&#xff0c;或者社区内容安全审核&#xff0c;那么目标检测技术很可能就是你需要的核心能…...

给你一张清单 9个降AI率网站 毕业论文全流程必备测评与推荐

在当前学术写作日益依赖AI工具的背景下&#xff0c;如何有效降低论文的AIGC率、去除AI痕迹&#xff0c;同时保持内容的逻辑性和语义通顺&#xff0c;成为许多学生和研究者关注的焦点。AI降重工具应运而生&#xff0c;不仅能够精准识别并修改AI生成内容的特征&#xff0c;还能在…...