vue-admin/vue-element-admin 自动生成表单,数据提交,组件传值

2023-05-16

父组件(基于element-UI):弹出层

<dialogBar :dialogData="dialogData" v-if="showUpdateDiaLog" @handleDiaLog="handleDiaLogConfirm"></dialogBar>
let dialogData= {
  dialog: true,
  title: '创建用户',
  type: 'create',
  formData: {
    formList:[
      {type: 'input', inputType: 'text', disabled: false, inputLabel: '用户名称', modelName: 'userName', placeholder: '请输入用户名', required: true, defaultValue: null},
      {type: 'input', inputType: 'password', disabled: false, inputLabel: '用户密码', modelName: 'userPwd', placeholder: '请输入密码', required: true, defaultValue: null},
      {type: 'select', inputType: 'select', disabled: true, inputLabel: '用户级别', modelName: 'userLevel', placeholder: '请输入选择用户级别', options: [{value: '0', label: '超级管理员'}, {value: '1', label: '测试管理员'}], required: true, defaultValue: null},
      {type: 'textarea', inputType: 'textarea', disabled: false, inputLabel: '用户描述', modelName: 'userDescription', placeholder: '请输入用户描述', required: false, defaultValue: null}
    ]
  }
};

子组件-->弹出层

<el-dialog
  :title="dialogData.title"
  :visible.sync="dialogData.dialog" class="dialogBar">
  <!--Form表单组件-->
  <FormBar
    :FormData="dialogData.formData"></FormBar>
  <div slot="footer" class="dialog-footer">
    <el-button @click="dialogData.dialog = false">取 消</el-button>
    <el-button type="primary" @click="confirm(dialogData.type)">确 定</el-button>
  </div>
</el-dialog>

子子组件-->表单

<template>
  <div class="formBar" :style="{display: (FormData.max)?FormData.max: 'block'}">
    <el-form
      :model="formBarForm"
      :label-width="FormData.labelWidth || '80px'"
      :label-position="FormData.labelPosition || 'left'">
      <!--input-->
      <el-form-item v-for="(inputItem, key) in FormData.formList"
                    :key="key"
                    :required="inputItem.required"
                    v-if="inputItem.type == 'input'"
                    :label="inputItem.inputLabel">
        <el-input
          :ref="inputItem.modelName"
          :type="inputItem.inputType"
          :disabled="inputItem.disabled"
          :placeholder="inputItem.placeholder"
          v-model="inputItem.defaultValue"></el-input>
      </el-form-item>
      <!--select-->
      <el-form-item v-for="(inputItem, key) in FormData.formList"
                    :key="key"
                    :required="inputItem.required"
                    v-if="inputItem.type == 'select'"
                    :label="inputItem.inputLabel">
        <el-select v-model="inputItem.defaultValue"
                   :multiple=inputItem.multiple?true:false
                   :disabled="inputItem.disabled"
                   :placeholder="inputItem.placeholder">
          <el-option v-for="(item, key) in inputItem.options"
                     :key="key" :value="item.value"
                     :label="item.label">
          </el-option>
        </el-select>
      </el-form-item>
      <!--select_input_group-->
      <el-form-item class="select_input_group"
                    v-for="(inputItem, key) in FormData.formList"
                    :key="key"
                    :required="inputItem.required"
                    v-if="inputItem.type == 'select_input_group'"
                    :label="inputItem.inputLabel">
        <div class="group" v-for="(group_item, key) in inputItem.groupList" :key="key">
          <el-input
            v-if="group_item.type == 'input'"
            :ref="group_item.modelName"
            :type="group_item.inputType"
            :disabled="group_item.disabled"
            :placeholder="group_item.placeholder"
            v-model="group_item.defaultValue"></el-input>
          <el-select v-if="group_item.type == 'select'"
                     :model="group_item.defaultValue"
                     :disabled="group_item.disabled"
                     :placeholder="group_item.placeholder">
            <el-option v-for="(item, key) in group_item.options"
                       :key="key" :value="item.value"
                       :label="item.label">
            </el-option>
          </el-select>
        </div>
      </el-form-item>

      <el-form-item  class="time_picker"
                     v-for="(inputItem, key) in FormData.formList"
                    :key="key"
                    :required="inputItem.required"
                    v-if="inputItem.type == 'time_picker'"
                    :label="inputItem.inputLabel">
        <el-time-picker
          format="HH:mm:ss"
          v-model="inputItem.defaultValue"
          :picker-options="inputItem.pickerOptions"
          :placeholder="inputItem.placeholder">
        </el-time-picker>

      </el-form-item>
      <!--textArea-->
      <el-form-item v-for="(inputItem, key) in FormData.formList"
                    :key="key"
                    :required="inputItem.required"
                    v-if="inputItem.type == 'textarea'"
                    :label="inputItem.inputLabel">
      <el-input
        :type="inputItem.inputType"
        :disabled="inputItem.disabled"
        :placeholder="inputItem.placeholder"
        v-model="inputItem.defaultValue"></el-input>
      </el-form-item>
      <!--<InputBar v-for="(item, key) in FormData.formList" :key="key" :inputItem="item"></InputBar>-->
      <!--<el-form-item>-->
        <!--<el-button type="primary" @click="handleFormBarForm">确定</el-button>-->
        <!--<el-button>取消</el-button>-->
      <!--</el-form-item>-->
    </el-form>

  </div>
</template>

<script>
export default {
  name: "formBar",
  props: {
    FormData: {
      type: Object,
      twoWay: true
    }
  },
  components: {},
  data() {
    return {
      formBarForm: {}
    }
  },
  created() {
  },
  mounted() {
  },
  methods: {
    handleFormBarForm () {
      let vue = this
    }
  }
}
</script>

<style scoped>

</style>

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vue-admin/vue-element-admin 自动生成表单,数据提交,组件传值 的相关文章

  • TensorBoard的使用

    介绍 使用 Tensorboard 是TF 的可视化工具 xff0c 它通过对Tensoflow程序运行过程中输出的日志文件进行可视化Tensorflow程序的运行状态 xff0c 如下所示 SCALARS 对标量数据进行汇总和记录 使用方
  • Tensorflow 多 GPU 训练

    介绍 TensorFlow中的并行主要分为模型并行和数据并行 模型并行需要根据不同模型设计不同的并行方式 xff0c 其主要原理是将模型中不同计算节点放在不同硬件资源上运算 比较通用的且能简便地实现大规模并行的方式是数据并行 xff0c 其
  • Hadoop 各组件介绍

    转自 https www cnblogs com klb561 p 9085615 html Hadoop是一个由Apache基金会所开发的分布式系统基础架构 用户可以在不了解分布式底层细节的情况下 xff0c 开发分布式程序 充分利用集群
  • 8、解决Linux无法上网的各种问题

    最近发现Linux重新开机后无法上网 xff0c 不仅不能ping通windows主机也不能上外网 ifconfig后eth0也没有分配IP地址 xff0c 总之各种问题都被我碰到了 现在来一一解决 xff01 1 没有分配到IP地址 开机
  • 解决开发板ping不通主机和虚拟机的问题

    使用TFTP和NFS从虚拟机下载文件或者制作根文件系统的前提是开发板能够ping同虚拟机 xff01 相信很多人都像我一样有过ping不通的经历 xff0c 经过2 3天的研究和实验后终于把问题解决了 xff0c 而且屡试不爽 最后得出结论
  • USB摄像头驱动配置及V4L2编程

    1 摄像头驱动开发 1 1 摄像头软件系统架构 摄像头系统架构分为四层 xff1a 摄像头 支持V4L2的摄像头驱动 V4L2核心 应用程序 V4L2核心是Linux系统自带的组件 xff0c 它可以屏蔽摄像头驱动层的差异 xff0c 不管
  • 机器学习中的五种回归模型及其优缺点

    转自https blog csdn net Katherine hsr article details 79942260 好像有部分公式不能显示 xff0c 请查看原博客 本文将会介绍五种常见的回归模型的概念及其优缺点 xff0c 包括线性
  • VGGNet介绍

    VGGNet介绍 1 简要概括 VGGNet由牛津大学计算机视觉组合和Google DeepMind公司研究员一起研发的深度卷积神经网络 它探索了卷积神经网络的深度和其性能之间的关系 xff0c 通过反复的堆叠3 3的小型卷积核和2 2的最
  • PX4编译问题总结

    PX4在变编译的时候总会碰到很多问题 有些问题根据提示就可以解决 xff0c 有些问题却有点麻烦 1 找不到python jinja2模块 CMake Error at usr share cmake 3 2 Modules FindPac
  • 面试专题(十三):Service 与 IntentService

    1 Service 与 IntentService区别 Service不是运行在独立的线程 xff0c 所以不建议在Service中编写耗时的逻辑和操作 xff0c 否则会引起ANR IntentService 1 可用于执行后台耗时的任务
  • ResNet介绍

    ResNet介绍 1 简要概括 ResNet xff08 Residual Neural Network xff09 由微软研究院的Kaiming He等四名华人提出 xff0c 通过使用ResNet Unit成功训练出了152层的神经网络
  • PX4日志生成及查看

    Pixhawk的飞行日志由固件中的sd2log模块记录在SD卡的log文件中 xff0c 目前版本的格式为 px4log xff08 曾经是 bin xff09 xff0c 根据sd2log的设置不同 xff0c 包含飞行日志的文件夹的名字
  • PX4中混控器Mixer的分析

    PX4架构保证了核心控制器中不需要针对机身布局做特别处理 混控指的是把输入指令 xff08 例如 xff1a 遥控器打右转 xff09 分配到电机以及舵机的执行器 xff08 如电调或舵机PWM xff09 指令 对于固定翼的副翼控制而言
  • PX4-固定翼的姿态控制

    下面分析代码的版本是v1 8 2 1 参数介绍 固定翼中有很多参数 xff0c 理解这些参数的含义非常重要 FW AIRSPD TRIM 巡航状态下的空速 15m s FW AIRSPD MIN 最小空速 10m s FW AIRSPD M
  • PX4子模块不一致的问题

    PX4新代码改变了很多东西 xff0c 同时子模块改变也挺大的 将主代码切换到较老版本时会发生子模块版本不符合的情况 xff0c 这时候需要注意 xff0c 切换后需要同步下子模块 make clean git checkout lt wh
  • 【乌拉喵.教程】串口服务器的配置与连接调试

    串口服务器型号 xff1a NSC6008 8 1 使用网线将PC与串口服务器进行连接 2 将PC的IP设为如下 3 使用光盘所带软件update exe找到与PC相连的串口服务器IP 点击图标修改串口服务器IP地址为10 116 2 20
  • 解决Linux-Ubuntu下网速慢的解决方法

    官网上下了一个新版的Ubuntu18 04 xff0c 发现这个版本的网络速度像乌龟一样 xff0c 查阅了很多人的博客都没有用 xff0c 很多都是解决关于浏览器慢的方法 但是 xff0c 这个系统慢的不是浏览器 xff0c 是接上WIF
  • FPGA---7系列之IBERT_GTX内外环测试

    一 概述 IBERT xff08 集成误码率测试仪 xff09 是xilinx为7系列FPGA GTX收发器设计的 xff0c 用于评估和监控GTX收发器 IBERT包括在FPGA逻辑中实现的模式生成器和检查器 xff0c 以及对端口的访问
  • FPGA之JESD204B接口——总体概要 尾片

    在上一篇博客中 JESD204B 1 总体概要 xff0c 我们框架性的介绍了JESD204B xff0c 这篇博客介绍协议所需要关注的一些参数 xff0c 这些参数基本就是决定了连接特性 理解这些参数 xff0c 有助于理解连接中的转换特
  • FPGA之JESD204B接口——总体概要 实例上

    JESD204B IP CORE结构 JESD204B支持速率高达12 5Gbps xff0c IPcore可以配置为发送端 xff08 如用于DAC xff09 或接收端 xff08 如用于ADC xff09 xff0c 每个core支持

随机推荐

  • Android-使用RecyclerView的ItemDecoration 实现炫酷的 吸顶效果

    转载请注明出处 xff1a 李诗雨 http blog csdn net cjm2484836553 article details 53453982 开始逐渐领略到 ItemDecoration的美 源码已上传至github xff0c
  • FPGA之JESD204B接口——总体概要 实例 中

    1 AD9174配置 本设计采用AD9174 xff0c 其是一款高性能 双通道 16位数模转换器 DAC xff0c 支持高达12 6 GSPS的DAC采样速率 该器件具有8通道 15 4 Gbps JESD204B数据输入端口 高性能片
  • FPGA之JESD204B接口——总体概要 实例 下

    1 概述 DAC正常工作的前提是电源以及时钟稳定工作 xff0c 因此需要首先配置锁相环 xff0c 根据ADI评估板EVAL AD9174开发记录 上的时钟需求配置出需要的时钟频率 xff0c 待时钟锁定后配置dac内部锁相环 xff0c
  • STM32与DS1302设计时钟芯片,超详细

    DS1302 是DALLAS 公司推出的涓流充电时钟芯片 xff0c 内含有一个实时时钟 日历和31 字节静态RAM xff0c 通过简单的串行接口与单片机进行通信 实时时钟 日历电路提供秒 分 时 日 周 月 年的信息 xff0c 每月的
  • SX1278与STM8L的精美结合。

    转发请注重原创出处 xff0c 谢谢 一 引言 能耗对于电池供电的产品来说是一个重大的问题 xff0c 一旦电能耗尽设备将 罢工 xff0c 在某些场合电能意味着电子产品的生命 物联网时代将会有越来越多电池供电的设备通过无线通信连接 xff
  • 手把手教你查找stm32 HardFault_Handler调试及问题方法

    版权声明 xff1a 本文为博主原创文章 xff0c 未经博主允许不得转载 https blog csdn net u013184273 article details 84440177 在编写STM32程序代码时由于自己的粗心会发现有时候
  • STM32进阶之串口环形缓冲区实现 FIFO

    队列的概念 在此之前 xff0c 我们来回顾一下队列的基本概念 xff1a 队列 Queue xff1a 是一种先进先出 First In First Out 简称 FIFO 的线性表 xff0c 只允许在一端插入 xff08 入队 xff
  • DLT645-2007电能表通讯协议

    DLT645 2007通讯协议 xff1a 1 发送的帧格式 xff1a 1 1 帧起始符 0x68H 这个不多说 xff0c 记住就好 xff1b 1 2 地址域A0 A5 地址域由 6 个字节构成 xff0c 每字节 2 位 BCD 码
  • nvcc 编译 spdlog出现的问题

    1 链接 libspdlog a 时提示需要加 fpic选项 在编译spdlog库时加上cmake选项 xff1a DCMAKE CXX FLAGS 61 34 fpic 34 参考 2 core h出现error 将core h中的如下代
  • protobuf安装

    clone 代码 git clone https github com protocolbuffers protobuf git安装依赖项 sudo apt get install autoconf sudo apt get install
  • git lfs 的使用

    安装 curl s https packagecloud io install repositories github git lfs script deb sh sudo bashsudo apt get install git lfsg
  • 李诗雨的2016

    不诗意的女程序猿不是好厨师 xff0c 大家好 xff0c 我是李诗雨 xff5e 首先 xff0c 要先向各位道个歉 xff0c 其实我也是在csdn上刚拿到 暂住证 的新人 所以有好多功能还不知道 xff0c 今天在手机app上才看到有
  • 使用barrier共享键鼠

    1 安装flatpak 1 1 ubuntu 18及以后 sudo apt install flatpak 1 2 ubuntu18 以前 sudo add apt repository ppa flatpak stablesudo apt
  • OpenCV中访问图像中像素的三种方法

    1 用指针访问像素元 用指针访问像素的这种方法利用的是C语言中的操作符 xff0c 这种方法最快 如 xff1a cv Mat image span class hljs number 100 span span class hljs nu
  • 目标跟踪方法总结

    1 数据集 1 1 OTB 最经典的benchmark xff0c 有2013的OTB50和2015的OTB100OTB包括25 的灰度序列 xff0c 分辨率相对较低http cvlab hanyang ac kr tracker ben
  • SiamFC:基于全卷积孪生网络的目标跟踪算法

    Abstract 本论文提出一种新的全卷积孪生网络作为基本的跟踪算法 xff0c 这个网络在ILSVRC15的目标跟踪视频数据集上进行端到端的训练 我们的跟踪器在帧率上超过了实时性要求 xff0c 尽管它非常简单 xff0c 但在多个ben
  • fusion的理解

    fusion 有很多种模式 xff0c 开始没明白 现在知道fusion 后然后采样 取平均 xff0c 然后恍然大悟
  • rk3288 buildroot 系统编译移植libcurl

    支持https configure prefix 61 pwd buildout host 61 arm buildroot linux CC 61 home gttest work RKLINUX rk3288 v linux build
  • ROS2中IMU话题的发布及可视化

    环境 xff1a Ubuntu 20 04 xff0c ROS2 Foxy 传感器 xff1a 维特智能BWT901CL 代码是从维特智能的示例代码修改的 xff0c 实现基本的加速度 角速度和角度读取 xff0c 发布IMU消息 这个传感
  • vue-admin/vue-element-admin 自动生成表单,数据提交,组件传值

    父组件 xff08 基于element UI xff09 xff1a 弹出层 lt dialogBar dialogData 61 34 dialogData 34 v if 61 34 showUpdateDiaLog 34 64 han