解决elementUi el-select 响应式不生效的问题

news/2025/2/22 6:30:17

情况一,字段类型不匹配

考虑option的value值的字段类型是否和api返回的字段类型一致,如果一个为字符串一个为数字类型是无法匹配上的

<template>
<div>
    <el-select  
      v-model="value" 
      size="large"
      style="width: 240px">
      <el-option
        v-for="item in options"
        :key="item.value"
        :label="item.label"
        :value="item.value"
      />
    </el-select >
</div>
</template>
<script setup>
import { ref, reactive, onMounted } from 'vue'
import axios from 'axios';
const options = [
  {
    value: 'Option1',
    label: '1',
  },
  {
    value: 'Option2',
    label: '2',
  },
]
const value = ref("")
const apiFun = async()=>{
    //接口返回的data结构
    /*
    {
        selectValue:1
    }
    */
    const data = await axios.get("****url****")
    //解决方法,转成同样类型
    value.value =data.selectValue.toString()
}
</script>

情况二,响应式失效

字段类型能对上,但是响应式失效了,这个时候要使用key强制刷新组件

<template>
<div>
    <el-select  
      v-model="value" 
      size="large"
      :key="index"
      style="width: 240px">
      <el-option
        v-for="item in options"
        :key="item.value"
        :label="item.label"
        :value="item.value"
      />
    </el-select >
</div>
</template>
<script setup>
import { ref, reactive, onMounted } from 'vue'
import axios from 'axios';
const options = [
  {
    value: 'Option1',
    label: '1',
  },
  {
    value: 'Option2',
    label: '2',
  },
]
const value = ref("")
const index = ref(0)
const apiFun = async()=>{
    //接口返回的data结构
    /*
    {
        selectValue:"2"
    }
    */
    const data = await axios.get("****url****")
    value.value =data.selectValue
    //解决方法,强制刷新组件
    index +=1 
}
</script>


http://www.niftyadmin.cn/n/5861799.html

相关文章

STM32的HAL库开发---单通道ADC采集(DMA读取)实验

一、实验简介 正常单通道ADC采集顺序是先开启ADC采集&#xff0c;然后等待ADC转换完成&#xff0c;也就是判断EOC位置1&#xff0c;然后再读取数据寄存器的值。 如果配置了DMA功能&#xff0c;在EOC位被硬件置1后&#xff0c;自动产生DMA请求&#xff0c;然后DMA进行数据搬运…

【论文精读】VLM-AD:通过视觉-语言模型监督实现端到端自动驾驶

论文地址&#xff1a; VLM-AD: End-to-End Autonomous Driving through Vision-Language Model Supervision 摘要 人类驾驶员依赖常识推理来应对复杂多变的真实世界驾驶场景。现有的端到端&#xff08;E2E&#xff09;自动驾驶&#xff08;AD&#xff09;模型通常被优化以模仿…

mysql为啥使用B+树

MySQL 的 InnoDB 存储引擎采用 B 树作为索引结构&#xff08;而不是 B 树或其他数据结构&#xff09;&#xff0c;主要是基于 B 树在数据库场景下的独特优势。以下是 MySQL 采用 B 树的具体原因&#xff1a; 1. B 树的核心优势 &#xff08;1&#xff09;更适合范围查询 B 树…

深入剖析Linux C中线程未释放问题

深入剖析 Linux C 中线程未释放问题 在 Linux C 编程中,线程的正确使用对于程序的性能和稳定性至关重要。其中,线程资源的释放是一个容易被忽视但又极为关键的环节。本文将通过具体代码示例,深入探讨线程未释放的问题,并结合进程的vmRss指标分析内存泄漏,最终排查出线程资…

理解 “边缘计算“

边缘计算&#xff08;Edge Computing&#xff09;是一种将数据处理和计算能力靠近数据源的新型计算模式&#xff0c;在工业物联网&#xff08;IIoT&#xff09;等众多领域有着至关重要的作用&#xff0c;以下为你详细介绍&#xff1a; 定义 边缘计算是指在靠近物或数据源头的…

overflow-x: auto 使用鼠标实现横向滚动,区分触摸板和鼠标滚动事件的方法

假设一个 div 的滚动只设置了 overflow-x: auto 我们发现使用鼠标的滚轮是无法左右滚动的&#xff0c;但是使用笔记本电脑的触摸板&#xff0c;或者在移动设备上是可以滚动的。所以我们需要兼容一下鼠标的横向滚动功能。 我们可以监控 wheel 事件&#xff0c;然后根据位置来计…

计算机专业知识【深入理解子网中的特殊地址:为何 192.168.0.1 和 192.168.0.255 不能随意分配】

在计算机网络的世界里&#xff0c;IP 地址是设备进行通信的关键标识。对于常见的子网&#xff0c;如 192.168.0.0/24&#xff0c;我们可能会疑惑为何某些地址不能分配给主机使用。接下来&#xff0c;我们就以 192.168.0.0/24 为例&#xff0c;详细解释为何 192.168.0.1 和 192.…

高级运维:1. 对比 LVS 负载均衡群集的 NAT 模式和 DR 模式,比较其各自的优势 。2. 基于 openEuler 构建 LVS-DR 群集。

1. LVS 负载均衡群集的 NAT 模式和 DR 模式的对比 特性NAT 模式DR 模式配置复杂度配置简单&#xff0c;适合初学者和小型网络环境配置相对复杂&#xff0c;需要配置虚拟 IP 和 ARP 抑制性能性能瓶颈可能出现在负载均衡器&#xff0c;不适合高流量场景高性能&#xff0c;响应速…