bug示意图: 给 select 赋值,select 展示的却是value的数据, 不是我们想看到 label 对应的数据,而且在下方的选择列表中并没有选中传递过来的数据
在这里插入图片描述

这个问题一般是 select v-model 所绑定的属性的数据类型和 可以选择列表中的value的数据类型不匹配造成的。
比如: 我的 v-model 绑定的是 dialogData.weChatAutoSendMessageTaskDO.weChatRobotId ,回显就是自己主动给这个 v-model 赋值,如果你给这个 v-model绑定的属性赋值 的数据类型是 Number,而enterpriseList选择列表 中的 value 是 String 类型,这个样子就会出现 标题问题。
解决办法:就是把二者的数据类型同一即可(既v-model 绑定的属性和 选择列表中 value 的数据类型保持一致即可)。转换数据类型太简单了自己根据实际情况,想最简单的办法处理吧。

 <el-form-item label="xxxxx" prop="weChatRobotId">
          <el-select
            v-model.trim="dialogData.weChatAutoSendMessageTaskDO.weChatRobotId"
            filterable
            :reserve-keyword="true"
            placeholder="请输入"
            style="width: 300px"
            multiple
            @change="profilePlatformUidChange"
          >
            <el-option
              v-for="item in enterpriseList"   // enterpriseList  这个数组就是用来做select 可以选择列表的
              :key="item.value"    
              :label="item.label"
              :value="item.value"
            ></el-option>
          </el-select>
        </el-form-item>

选择列表示意图:
在这里插入图片描述

可以使用 typeof 来简单判断 你赋值数据的数据类型,因为一般来说,value 的值一般是数字,数据类型一般是 String, 或 Number

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐