element中el-form-item属性prop踩坑

el-form-item 是 ElementUI 中用于包装表单元素的组件,通常用于和 el-form 配合实现表单功能。el-form-item 提供了一个 prop 属性,用于指定表单项对应数据对象中对应属性的名称。

但是在使用 prop 属性时,需要注意一些坑点:

  1. prop 值必须与表单数据对象中的属性名称保持一致,否则表单项将无法与数据对象进行双向绑定。

  2. 如果表单数据对象中存在嵌套对象和数组,则 prop 值需要使用 .[] 来指定对应属性名称或数组下标。

下面给出两个示例:

  1. 嵌套数据对象
    假设我们需要实现一个表单,其中包含有一个嵌套的数据对象。数据对象 data 的结构如下:
{
  name: 'Jack',
  gender: 'male',
  contact: {
    email: 'jack@example.com',
    phone: '1234567890'
  }
}

对应的表单元素如下:

<el-form :model="data">
  <el-form-item label="Name" prop="name">
    <el-input v-model="data.name"></el-input>
  </el-form-item>
  <el-form-item label="Gender" prop="gender">
    <el-radio-group v-model="data.gender">
      <el-radio label="male">Male</el-radio>
      <el-radio label="female">Female</el-radio>
    </el-radio-group>
  </el-form-item>
  <el-form-item label="Email" prop="contact.email">
    <el-input v-model="data.contact.email"></el-input>
  </el-form-item>
  <el-form-item label="Phone" prop="contact.phone">
    <el-input v-model="data.contact.phone"></el-input>
  </el-form-item>
</el-form>

注意到在 prop 属性中需要使用 . 符号指定嵌套属性的名称,如 prop="contact.email"

  1. 数组数据对象
    假设我们需要实现一个表单,其中包含有一个数组的数据对象。数据对象 data 的结构如下:
{
  name: 'Jack',
  hobbies: ['reading', 'swimming']
}

对应的表单元素如下:

<el-form :model="data">
  <el-form-item label="Name" prop="name">
    <el-input v-model="data.name"></el-input>
  </el-form-item>
  <el-form-item label="Hobbies" prop="hobbies">
    <el-checkbox-group v-model="data.hobbies">
      <el-checkbox label="reading">Reading</el-checkbox>
      <el-checkbox label="swimming">Swimming</el-checkbox>
      <el-checkbox label="coding">Coding</el-checkbox>
    </el-checkbox-group>
  </el-form-item>
</el-form>

注意到在 prop 属性中需要使用 [] 符号指定数组下标。这里使用的是 prop="hobbies",表明该表单项对应的是整个数组,而不是其中的某个元素。同时,对于 el-checkbox-group,使用的是 v-model="data.hobbies" 来实现对整个数组的双向绑定。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:element中el-form-item属性prop踩坑 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • javascript 日期联动选择器 [其中的一些代码值得学习]

    下面是详细讲解“javascript 日期联动选择器”的攻略。 1. 简介 javascript 日期联动选择器是一种基于javascript的日期选择器,用户可以通过该日期选择器选择年、月、日。此日期选择器的主要特点是具有联动效果,可以自动判断月份的天数,具有良好的用户体验。 2. 实现思路 该日期选择器的实现思路如下:- 首先在html中定义3个sele…

    JavaScript 2023年5月27日
    00
  • JavaScript 高效运行代码分析

    当我们编写 JavaScript 代码时,我们希望它具有良好的性能,以避免网页加载过慢或出现卡顿等问题。因此需要学会分析和优化 JavaScript 的运行效率。 1. 分析代码 a. 使用工具 我们可以使用浏览器自带的开发者工具或其他第三方开发者工具来诊断 JavaScript 代码的性能瓶颈。其中,Chrome 浏览器自带的开发者工具能够提供我们耗时最长…

    JavaScript 2023年5月27日
    00
  • js实现0ms延时定时器的几种方式

    下面是详细的讲解“js实现0ms延时定时器的几种方式”的完整攻略。 什么是“0ms延时定时器” “0ms延时定时器”是指在JavaScript定时器中设置的延时时间为0ms,并且能够保证事件队列中下一个任务的执行完全在当前任务结束后立即执行。这种延时定时器对于实时性要求较高的操作非常有用,例如画布绘制、游戏开发等。 几种实现方式 以下是几种实现“0ms延时定…

    JavaScript 2023年6月11日
    00
  • 如何用浏览器读取本地文件(兼容IE8),new bing能帮我吗?

    浏览器读写文件? 有一份老旧而精巧的代码(2006或更早),带js的html,可以只用浏览器来处理一些二进制存档数据。 文件的读写怎么办?通过变通的方法来完成。 利用十六进制编辑软件如WinHEX,直接复制十六进制数值为字符串,贴到一个TextArea以输入; 同样处理过的数据也是生成十六进制字符串,用WinHEX以ASCII Hex的格式粘贴到新文件中。 …

    JavaScript 2023年4月18日
    00
  • JavaScript检测原始值、引用值、属性

    JavaScript是一门弱类型语言,因此理解原始值和引用值的概念对于开发人员来说至关重要。在JavaScript中,有两种类型的值:原始值和引用值。原始值是不可变的,而引用值是可变的。 JavaScript的原始值和引用值 JavaScript的原始值包括字符串、数字、布尔值等。原始值是不可变的,也就是说,无法直接更改原始值的值。例如: let a = &…

    JavaScript 2023年6月10日
    00
  • javascript 二维数组的实现与应用

    JavaScript 二维数组的实现与应用 什么是二维数组? 二维数组指的是数组中包含数组的数据结构。在JavaScript中,我们可以通过创建一个包含其他数组的数组来创建一个二维数组。 如何实现一个二维数组? 在Javascript中,我们可以使用以下方法来声明并初始化一个二维数组: let myArray = [ [1, 2, 3], [4, 5, 6]…

    JavaScript 2023年5月27日
    00
  • JS实现图片预加载无需等待

    为了使页面加载更快,我们可以在页面载入之前就预先加载所需要的图片资源。这个过程称为“图片预加载”。当用户访问页面时,这些图片就已经在本地缓存中了,从而不会出现因等待加载而导致页面卡顿的情况。下面是JS实现图片预加载无需等待的完整攻略。 1. 获取图片的URL列表 首先,我们需要获取要预加载的图片列表。这个列表可以是一个数组,也可以通过DOM元素获取。下面是一…

    JavaScript 2023年6月11日
    00
  • JavaScript面试题大全(推荐)

    感谢对本网站的关注和支持。以下是对于“JavaScript面试题大全(推荐)”的完整攻略: 简介 “JavaScript面试题大全(推荐)”是一篇完整的JavaScript面试题目合集,其中包含了常见的JavaScript面试题以及它们的详细答案解释。本文的题目难度从基础到高级不等,覆盖了面试中常见的各个知识点。该题集不仅适用于求职者准备面试,也适合企业HR…

    JavaScript 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部