表单参数绑定(如何解决一个输入框绑定两个参数)

表单参数绑定(如何解决一个输入框绑定两个参数)

在这里插入图片描述

问题复现

       <el-form-item label="会议编号" prop="meetingNum">
          <el-select v-model="form.meetingNum" placeholder="请选择会议编号" style="width: 100%;"
                     :disabled="form.electricalNum ? false : true">
            <el-option v-for="item in meetingNumList" :key="item.id" :label="item.consultationCode"
                       :value="item.consultationCode">
            </el-option>
          </el-select>
        </el-form-item>

现在我想绑定两个参数,form.meetingNum绑定id,还有一个form.userId绑定userId,怎么办呢?

问题解决

如果想将form.meetingNum绑定到id,并将form.userId绑定到userId,你可以通过修改el-option元素的value属性来实现这一点。具体来说,你可以将form.meetingNum的值设置为对象,其中包含iduserId属性。下面是一个示例:

<el-form-item label="会议编号" prop="meetingNum">
  <el-select v-model="form.meetingNum" placeholder="请选择会议编号" style="width: 100%;"
    :disabled="form.electricalNum ? false : true">
    <el-option v-for="item in meetingNumList" :key="item.id" :label="item.consultationCode"
      :value="{ id: item.id, userId: item.userId }">
    </el-option>
  </el-select>
</el-form-item>

在这个例子中,form.meetingNum将成为一个包含iduserId属性的对象。然后,你可以通过form.meetingNum.idform.meetingNum.userId来访问这两个值。

确保在处理提交表单或其他操作时,你了解form.meetingNum的结构,以便正确处理iduserId

但是,我不满意,我不想这样子来回换参数,那么,就稍微改变一下啦!

方案优化

另一种方法是使用计算属性(computed property)来处理这两个值的绑定。你可以在计算属性中将form.meetingNum拆分为iduserId。以下是一个例子:

<template>
  <el-form>
    <el-form-item label="会议编号" prop="meetingNum">
      <el-select v-model="selectedMeeting" placeholder="请选择会议编号" style="width: 100%;">
        <el-option v-for="item in meetingNumList" :key="item.id" :label="item.consultationCode" :value="item">
        </el-option>
      </el-select>
    </el-form-item>
  </el-form>
</template>

<script>
export default {
  data() {
    return {
      form: {
        userId: null, // Initialize userId with a default value if needed
      },
      meetingNumList: [
        // Your meeting number data here
      ],
    };
  },
  computed: {
    selectedMeeting: {
      get() {
        return this.form.meetingNum;
      },
      set(value) {
        this.form.meetingNum = value.id;
        this.form.userId = value.userId;
      },
    },
  },
};
</script>

在这个例子中,我们使用了计算属性selectedMeeting来处理form.meetingNum的获取和设置。当选择了一个会议编号时,set方法会将其拆分为iduserId,并分别设置到form.meetingNumform.userId中。这样,你可以维护一个更简洁的表单数据结构。

问题总结

当你想要将一个表单项(如form.meetingNum)与多个值关联时,有两种常见的方法:

  1. 使用对象作为值

    • el-optionvalue属性中,将form.meetingNum设置为一个对象,该对象包含需要关联的多个值,比如iduserId
    • 在后续代码中,通过form.meetingNum.idform.meetingNum.userId来访问这两个值。
    <el-option v-for="item in meetingNumList" :key="item.id" :label="item.consultationCode" :value="{ id: item.id, userId: item.userId }">
    </el-option>
    
  2. 使用计算属性进行处理

    • 使用计算属性,将form.meetingNum拆分为iduserId
    • el-select中,使用v-model绑定计算属性,使其更容易处理多个关联值。
    <el-select v-model="selectedMeeting" placeholder="请选择会议编号" style="width: 100%;">
      <el-option v-for="item in meetingNumList" :key="item.id" :label="item.consultationCode" :value="item">
      </el-option>
    </el-select>
    
    computed: {
      selectedMeeting: {
        get() {
          return this.form.meetingNum;
        },
        set(value) {
          this.form.meetingNum = value.id;
          this.form.userId = value.userId;
        },
      },
    },
    

选择哪种方法取决于你的偏好和代码的结构。第一种方法直接在el-option中处理值的结构,而第二种方法通过计算属性提供更灵活的处理方式,使得在后续的逻辑中可以更容易地操作这些值。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/242054.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

selenium+python自动化测试 —— 解决无法启动IE浏览器及报错问题!

前言&#xff1a;记录启动IE浏览器的报错及解决方法。 错误1&#xff1a; selenium.common.exceptions.WebDriverException: Message: IEDriverServer.exe executable needs to be in PATH. Please download from http://selenium-release.storage.googleapis.com/index.html…

SQL Server 服务启动报错:错误1069:由于登录失败而无法启动服务

现象 服务器异常关机以后&#xff0c;SQL Server服务无法启动了。 启动服务时报错&#xff1a; 错误1069:由于登录失败而无法启动服务 解决办法 我的电脑–控制面板–管理工具–服务–右键MSSQLSERVER–属性–登录–登陆身份–选择"本地系统帐户" 设置完成后&am…

springboot整合日志框架log4j2

springboot整合日志框架log4j2 前言&#xff1a;springboot提供了默认的日志框架logback&#xff0c;结合slf4j门面&#xff0c;基于简单配置即可实现日志输出记录。但是实际开发中很多项目会使用log4j2&#xff0c;log4j2是log4j的升级版本&#xff0c;性能和安全性上比log4j…

【视觉SLAM十四讲学习笔记】第四讲——指数映射

专栏系列文章如下&#xff1a; 【视觉SLAM十四讲学习笔记】第一讲——SLAM介绍 【视觉SLAM十四讲学习笔记】第二讲——初识SLAM 【视觉SLAM十四讲学习笔记】第三讲——旋转矩阵 【视觉SLAM十四讲学习笔记】第三讲——旋转向量和欧拉角 【视觉SLAM十四讲学习笔记】第三讲——四元…

ffmpeg编解码——数据包(packet)概念(如何正确处理数据包中的显示时间戳pts与解码时间戳dts关系?)

文章目录 FFmpeg编解码——数据包&#xff08;Packet&#xff09;概念1. 数据包&#xff08;Packet&#xff09;简介2. 数据包&#xff08;Packet&#xff09;在FFmpeg中的应用2.1 从媒体文件读取数据包2.2 向媒体文件写入数据包 3. 数据包&#xff08;Packet&#xff09;相关问…

C语言指针基础题(二)

目录 例题一题目解析及答案 例题二题目解析及答案 例题三题目解析及答案 例题四题目解析及答案 例题五题目解析及答案 感谢各位大佬对我的支持,如果我的文章对你有用,欢迎点击以下链接 &#x1f412;&#x1f412;&#x1f412; 个人主页 &#x1f978;&#x1f978;&#x1f…

使用Microsoft Dynamics AX 2012 - 8. 财务管理

财务管理的主要职责是控制和分析与货币金额有关的所有交易。这些事务发生在整个组织的业务流程中。 因此&#xff0c;财务管理是企业管理解决方案的核心领域。在Dynamics AX中&#xff0c;支持所有部门业务流程的应用程序的深度集成可立即提供准确的财务数据。 分类账交易的原…

SQL小技巧3:分层汇总

前几天&#xff0c;QQ学习群有个小伙伴问我一个使用SQL分层汇总的问题。 今天正好分享下。 需求描述 在数据报表开发的工作中&#xff0c;经常会遇到需要对数据进行分组汇总的情况。 假设有一个销售数据表sales&#xff0c;包含列region&#xff08;地区&#xff09;、mont…

验收支撑-软件项目验收计划书

软件项目验收计划的作用主要有以下几点&#xff1a; 确保项目质量&#xff1a;通过项目验收&#xff0c;客户或相关方可以对项目的成果进行全面、系统的评估&#xff0c;以确保项目达到预期的质量标准。发现和解决问题&#xff1a;在项目开发过程中&#xff0c;难免会存在一些问…

SpringBoot程序打包失败处理

&#x1f648;作者简介&#xff1a;练习时长两年半的Java up主 &#x1f649;个人主页&#xff1a;程序员老茶 &#x1f64a; ps:点赞&#x1f44d;是免费的&#xff0c;却可以让写博客的作者开心好久好久&#x1f60e; &#x1f4da;系列专栏&#xff1a;Java全栈&#xff0c;…

产品入门第三讲:Axure产品流程图绘制

&#x1f4da;&#x1f4da; &#x1f3c5;我是默&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; ​​​​​ &#x1f31f;在这里&#xff0c;我要推荐给大家我的专栏《Axure》。&#x1f3af;&#x1f3af; &#x1f680;无论你是编程小白&#xff0c;还…

AE (3)_主观亮度和对比度调试

#灵感# 画面的亮度、对比度是最直接&#xff0c;观看者最先获得的感受。所以有必要花时间认真调整。 ------哈哈&#xff0c;虽然调试的时间其实不如磨清晰度多。 目录 举个图例&#xff1a; 三个参数AE、gamma、LTM&#xff1a; 调试顺序&#xff1a; 举个图例&#xff1…

【Hadoop_06】MapReduce的概述与wc案例

1、MapReduce概述1.1 MapReduce定义1.2 MapReduce优点1.3 MapReduce缺点1.4 MapReduce核心思想1.5 MapReduce进程1.6 常用数据序列化类型1.7 源码与MapReduce编程规范 2、WordCount案例实操2.1 本地测试2.2 提交到集群测试 1、MapReduce概述 1.1 MapReduce定义 MapReduce是一…

WhatsApp获客怎么做?教你五个技巧!

随着全球通信的普及&#xff0c;WhatsApp已经成为人们日常生活中不可或缺的沟通工具&#xff0c;对于跨境电商和外贸企业来说&#xff0c;利用WhatsApp进行获客同样具有巨大的潜力。 那么&#xff0c;如何有效地在WhatsApp上获取客户呢?接下来&#xff0c;我们将为你介绍五个…

Linux系统解决“Key was rejected by service”

Linux系统下加载驱动模块出现如上错误提示的原因为&#xff1a;此驱动未经过签名。 方法一、关闭Secure Boot 如果是物理机&#xff0c;需要开机进入BIOS&#xff0c;找到“Secure Boot”的选项&#xff0c;然后关闭。 如果是虚拟机&#xff0c;可以打开虚拟设置&#xff0c…

物联网与低代码:构建智能化的连接世界

物联网&#xff08;IoT&#xff09;是指通过互联网将各种物理设备、传感器、车辆等连接起来&#xff0c;从而实现数据交互和智能化控制的技术领域。而低代码开发平台则是一种快速构建应用程序的方法&#xff0c;通过简化开发过程&#xff0c;使开发人员能够更迅速地实现创意和创…

Nginx【通俗易懂】《中篇》

目录 1.Url重写rewrite 2.防盗链 3.静态资源压缩 4.跨域问题 1.Url重写rewrite &#x1f929;&#x1f929;&#x1f929; 1.1.rewrite书写格式 rewrite是实现URL重写的关键指令&#xff0c;根据regex&#xff08;正则表达式&#xff09;部分内容&#xff0c;重定向到rep…

MS913/914 25-100MHz 10/12 位用于平面显示器链路Ⅲ的具有直流平衡编码和双向控制通道的串化器和解串器

MS913/MS914 芯片组是 25MHz~100MHz 10 位/12 位 FPD Link III SER/DES(串化器/解串器)&#xff0c;它提供高速 FPD-Link III 接口和高速正向通路以及用于差分对上数据发送的双向 控制通路。广泛应用于车载摄像&#xff0c;医疗设备&#xff0c;管道探测等领 域。 主要特点…

【强化学习-读书笔记】有限马尔可夫决策过程

参考 Reinforcement Learning, Second Edition An Introduction By Richard S. Sutton and Andrew G. BartoMDP 是强化学习问题在数学上的理想化形式&#xff0c;因为在这个框架下我们可以进行精确的理论说明 智能体与环境的交互 智能体与环境交互&#xff0c;会得到轨迹&…

你真的了解Shiro框架吗?

关注公众号回复20231110获取最新网络安全以及内网渗透等资料。 文章目录 关注公众号回复20231110获取最新网络安全以及内网渗透等资料。Shiro的核心架构Shiro中的认证认证shiro中认证的关键对象 认证流程调试认证流程Shiro的加密过程Shiro中的解密过程总结 Shiro的核心架构 Shi…