热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

解决ElementUI中Select组件创建条目为空时报错的问题

本文介绍如何在ElementUI的Select组件中使用allow-create属性创建新条目,并处理创建条目为空时出现的错误。我们将详细说明filterable属性的必要性,以及default-first-option属性的作用。

在Element UI的Select组件中,通过设置allow-create属性,用户可以在输入框中输入文字来创建新的条目。为了确保此功能正常工作,必须同时设置filterable属性为true。此外,default-first-option属性可以启用回车键直接选择第一个选项的功能。

<template><el-select v-model="value" multiple filterable allow-create default-first-option placeholder="请选择文章标签"><el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></-option></el-select></template><script>export default { data() { return { options: [ { value: 'HTML', label: 'HTML' }, { value: 'CSS', label: 'CSS' }, { value: 'Javascript', label: 'Javascript' } ], value: [] } }}</script>

注意:创建条目时,数据应以数组形式存储,因为显示的是数组格式。

如果不需要创建新条目,可以移除allow-create属性。例如:

<el-form-item label="开发人员" style="margin-bottom:0"><el-select v-model="developer" multiple filterable remote :allow-create="false" placeholder="请输入开发人员" :remote-method="developerRemote" :loading="loading"><el-option v-for="v in developerItem" :key="v.uid" :value="v.uid" :label="`${v.userName}(${v.uid})`" /></el-select></el-form-item>
<el-form-item label="测试人员" style="margin-bottom:0"><el-select v-model="tester" multiple filterable remote :allow-create="false" placeholder="请输入测试人员" :remote-method="testerRemote" :loading="loading"><el-option v-for="v in testerItem" :key="v.uid" :value="v.uid" :label="`${v.userName}(${v.uid})`" /></el-select></el-form-item>

developer: [],
developerItem: [],
tester: [],
testerItem: []

上传时,后台需要字符串格式的数据,因此在表单提交时需将数组转换为字符串。

developer: this.developer.join(','),
tester: this.tester.join(',')

展示时:

this.developer = res.developer.split(',');
this.tester = res.tester.split(',');

当后台返回空字符串时,会出现显示问题。为此,我们增加了非空校验:

this.developer = this.developer === '' ? [] : res.developer.split(',');
this.tester = this.tester === '' ? [] : res.tester.split(',');

修改后,整个表单提交和数据显示均正常。


推荐阅读
  • 解读MySQL查询执行计划的详细指南
    本文旨在帮助开发者和数据库管理员深入了解如何解读MySQL查询执行计划。通过详细的解析,您将掌握优化查询性能的关键技巧,了解各种访问类型和额外信息的含义。 ... [详细]
  • 从 .NET 转 Java 的自学之路:IO 流基础篇
    本文详细介绍了 Java 中的 IO 流,包括字节流和字符流的基本概念及其操作方式。探讨了如何处理不同类型的文件数据,并结合编码机制确保字符数据的正确读写。同时,文中还涵盖了装饰设计模式的应用,以及多种常见的 IO 操作实例。 ... [详细]
  • Scala 实现 UTF-8 编码属性文件读取与克隆
    本文介绍如何使用 Scala 以 UTF-8 编码方式读取属性文件,并实现属性文件的克隆功能。通过这种方式,可以确保配置文件在多线程环境下的一致性和高效性。 ... [详细]
  • MySQL索引详解与优化
    本文深入探讨了MySQL中的索引机制,包括索引的基本概念、优势与劣势、分类及其实现原理,并详细介绍了索引的使用场景和优化技巧。通过具体示例,帮助读者更好地理解和应用索引以提升数据库性能。 ... [详细]
  • 毕业设计:基于机器学习与深度学习的垃圾邮件(短信)分类算法实现
    本文详细介绍了如何使用机器学习和深度学习技术对垃圾邮件和短信进行分类。内容涵盖从数据集介绍、预处理、特征提取到模型训练与评估的完整流程,并提供了具体的代码示例和实验结果。 ... [详细]
  • 本文深入探讨了Python中的高阶函数和Lambda表达式的使用方法,结合实际案例解析其应用场景,帮助开发者更好地理解和运用这些强大的工具。 ... [详细]
  • C# LiNQ 查询 join连接
    C# LiNQ 查询 join连接 ... [详细]
  • 本教程涵盖OpenGL基础操作及直线光栅化技术,包括点的绘制、简单图形绘制、直线绘制以及DDA和中点画线算法。通过逐步实践,帮助读者掌握OpenGL的基本使用方法。 ... [详细]
  • 本文详细介绍了 MySQL 中 LAST_INSERT_ID() 函数的使用方法及其工作原理,包括如何获取最后一个插入记录的自增 ID、多行插入时的行为以及在不同客户端环境下的表现。 ... [详细]
  • 本文详细探讨了JDBC(Java数据库连接)的内部机制,重点分析其作为服务提供者接口(SPI)框架的应用。通过类图和代码示例,展示了JDBC如何注册驱动程序、建立数据库连接以及执行SQL查询的过程。 ... [详细]
  • 使用GDI的一些AIP函数我们可以轻易的绘制出简 ... [详细]
  • 在多线程编程环境中,线程之间共享全局变量可能导致数据竞争和不一致性。为了解决这一问题,Linux提供了线程局部存储(TLS),使每个线程可以拥有独立的变量副本,确保线程间的数据隔离与安全。 ... [详细]
  • 作者:守望者1028链接:https:www.nowcoder.comdiscuss55353来源:牛客网面试高频题:校招过程中参考过牛客诸位大佬的面经,但是具体哪一块是参考谁的我 ... [详细]
  • 深入解析Spring启动过程
    本文详细介绍了Spring框架的启动流程,帮助开发者理解其内部机制。通过具体示例和代码片段,解释了Bean定义、工厂类、读取器以及条件评估等关键概念,使读者能够更全面地掌握Spring的初始化过程。 ... [详细]
  • InmyapplicationIhaveQGraphicsScenewithpixmapaddedandallisviewedinQGraphicsViewwithsc ... [详细]
author-avatar
太阳神神神_890
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有