vben admin BasicModal和BasicForm的使用

工作笔记,只供参考
一、BasicModal使用

1.创建文件为component在里面创建index.vue

注意 v-bind="$attrs"记得写,用于将弹窗组件的 attribute 传入 BasicModal 组件
1.register:BasicModal的配置项
2.title:标题
3.ok:点击确认按钮
4.closeModal:关闭弹框
5.setModalProps:设置弹出框的某些属性
6.data:为接受的参数

<template><div><BasicModal@register="registerModal"v-bind="$attrs"title="音乐人考核"@ok="handleSubmit"></BasicModal></div>
</template>
<script lang="ts" setup>import { BasicModal, useModalInner } from '@/components/Modal';const [registerModal, { closeModal, setModalProps }] = useModalInner(async (data: any) => {setModalProps({ confirmLoading: false });console.log(data);});const handleSubmit = () => {closeModal();};
</script>

2.在需要的页面引入BasicModal

2.1 引入Modal
3.success 成功时用来接收的回调

<template><div><Modal width="50%" @register="modalOpen" @success="handleSuccess" ></Modal></div>
</template><script setup lang="ts">//引入Modalimport Modal from './components/Modal/index.vue';// 引入usModal 用来打开弹框import { useModal } from '@/components/Modal';const [modalOpen, { openModal }] = useModal();//打开Modal框 true 为打开  后面为传的参数const handleExamine = (record: any) => {openModal(true, { isUpdate: true, record });};
<script>

一、BasicForm使用

<template><div><BasicModal @register="registerModal" v-bind="$attrs" title="音乐人考核" @ok="handleSubmit"><BasicForm @register="registerForm"> </BasicForm></BasicModal></div>
</template>
<script lang="ts" setup>import { BasicModal, useModalInner } from '@/components/Modal';import { BasicForm, useForm } from '@/components/Form';import { formSchemas } from './index.data';const [registerForm, {}] = useForm({labelWidth: 80, // 前面间距baseColProps: { span: 24 },schemas: formSchemas,actionColOptions: {span: 24,},showActionButtonGroup: false, //是否显示 重置 查询按钮});const [registerModal, { closeModal, setModalProps }] = useModalInner(async (data: any) => {setModalProps({ confirmLoading: false });console.log(data);});const handleSubmit = () => {closeModal();};
</script>

1. 引入BasicForm

1.1.registerForm 常用配置项

方法可选值描述
labelWidth100表单增加 label 宽度
baseColProps{ span: 24 }配置所有选子项的 ColProps
schemas表单的配置项,具体看下方
actionColOptions{ span: 24 }操作按钮外层 Col 组件配置
showActionButtonGrouptrue/false是否显示 重置 查询按钮
size'default' , 'small' , 'large'

向表单内所有组件传递 size 参数,自定义组件需自行实现 size 接收

compact

true/fasle紧凑类型表单,减少 margin-bottom

2.form表单方法

方法使用方法描述
validatevalidate()校验整个表单

validateFields

validateFields()手动验证表单是否通过

clearValidate

clearValidate()

清空校验

getFieldsValue

getFieldsValue()

获取表单值

setFieldsValue

    setFieldsValue({

      field1: 111,

      field33: '2020-12-12',

      field3: dayjs('2020-12-12', 'YYYY-MM-DD'),

    });

设置表单值

resetFields

resetFields()

重置

updateSchema

updateSchema({ field: 'filed', componentProps: { disabled: true } });
指定某个禁用
  import { BasicForm, useForm } from '@/components/Form';import { formSchemas } from './index.data';const [registerForm, {resetFields, setFieldsValue, validate}] = useForm({labelWidth: 80, // 前面间距baseColProps: { span: 24 },schemas: formSchemas,actionColOptions: {span: 24,},showActionButtonGroup: false, //是否显示 重置 查询按钮});

2.在template里面使用BasicForm标签

  <BasicForm @register="registerForm"> </BasicForm>

3.BasicForm schemas配置项
 

属性类型可选值说明
fieldstring-字段名
labelstring-标签名
componentstring-组件类型,见下方 ComponentType
subLabelstring-二级标签名灰色
suffixsring / number / ()=>{}组件后面的内容
labelWidthstring , number-

覆盖统一设置的 labelWidth

showboolean / ()=>{}-动态判断当前组件是否显示,css 控制,不会删除 dom
ifShowboolean / ()=>{}-动态判断当前组件是否显示,js 控制,会删除 dom
helpMessage
string , string[]
-
标签名右侧温馨提示
requiredboolean-是否校验该字段
rulesValidationRule[]校验复杂比如是否为数字、不能有小数点等
  {field: 'field1',component: 'Input',label: '字段1',colProps: { span: 8 },componentProps: {placeholder: '自定义placeholder',onChange: (e: any) => {console.log(e);},},},

4.BasicForm 组件类型都有哪些

标签类型描述
Input输入框
DatePicker日期
RangePicker开始日期~结束日期
Select下拉框
CheckboxGroup多选框
RadioGroup单选框

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

企业数据挖掘平台产品特色及合作案例介绍

泰迪企业数据挖掘平台是一款通用的、企业级、智能化的数据分析模型构建与数据应用场景设计工具&#xff0c;能够一体化地完成数据集成、模型构建、模型发布&#xff0c;为数据分析、探索、服务流程提供支撑&#xff0c;提供完整的数据探索、多数据源接入、特征处理、模型搭建、…

基于KNN的旋转机械故障诊断(MATLAB)

KNN算法又称K-近邻算法&#xff0c;其主要思想是&#xff1a;对于要分类的样本按照一定的相似性度量方法寻找与之最近的K个邻居&#xff0c;计算这K个邻居中类别出现次数最多的那个类作为该样本所属类。其算法步骤如下。 (1)计算待分类样本与训练集中各个数据之间的距离。 (2…

mybatis-plus 实体中空字段更新不上

FieldStrategy 是一个枚举类型&#xff0c;它定义了字段的几种策略&#xff1a; IGNORED&#xff1a;忽略判断&#xff0c;所有字段都进行更新操作 NOT_NULL&#xff1a;非 NULL 判断&#xff08;默认策略&#xff09;&#xff0c;字段非 NULL 才进行更新 NOT_EMPTY&#xff…

Kompas AI数据分析与预测功能对比

一、引言 在现代商业环境中&#xff0c;数据分析与预测是企业制定战略决策的关键工具。通过对大量数据的分析&#xff0c;企业能够识别趋势、预测未来变化&#xff0c;并做出更为明智的决策。本文将对比Kompas AI与其他主要AI产品在数据分析与预测方面的能力&#xff0c;展示K…

【芯片】MCU的分类

MCU又称单片微型计算机(Single Chip Microcomputer )或者单片机&#xff0c;是把中央处理器(Central Process Unit&#xff1b;CPU)的频率与规格做适当缩减&#xff0c;并将内存(memory)、计数器(Timer)、USB、A/D转换、UART、PLC、DMA等周边接口&#xff0c;甚至LCD驱动电路都…

智能扫地机,让生活电器更加便民-NV040D扫地机语音方案

一、语音扫地机开发背景&#xff1a; 随着人工智能和物联网技术的飞速发展&#xff0c;智能家居设备已成为现代家庭不可或缺的一部分。其中&#xff0c;扫地机作为家庭清洁的重要工具&#xff0c;更是得到了广泛的关注和应用。 然而&#xff0c;传统的扫地机在功能和使用上仍存…

「UCD」浅谈UIUX设计与UE落地

UCD产品设计中心在UIUX设计与UE实现方面,特别强调了组件化设计的重要性和实践方法。关于组件化设计详解的要点,结合具体案例和访问链接。 组件化设计的定义 组件化设计是一种将界面分解为可复用组件的方法。这种方法类似于搭积木,每个组件既独立又统一,可以自由组合、替换…

计算机网络之入门

1.网络的发展 1.1计算机网络定义 计算机网络是以共享资源&#xff08;硬件、软件和数据等&#xff09;为目的而连接起来的、在协议控制下&#xff0c;由一台或多台计算机、若干台终端设备、数据传输设备等组成的系统之集合。 这些计算机系统应当具有独立自治的能力&#xff…

无芯封装基板适用于先进封装技术 我国行业发展面临一定挑战

无芯封装基板适用于先进封装技术 我国行业发展面临一定挑战 无芯封装基板指去除作为核心支撑层的芯板&#xff0c;仅由积层板构成的封装基板。与传统带有芯层的封装基板相比&#xff0c;无芯封装基板具有轻量化、密度高、信号传输质量高、散热性能好、布线灵活性好等优势&#…

为什么每一名程序员都应该学习 C++?

掌握 C 可不容易&#xff0c;但一旦你掌握了&#xff0c;就会获得丰厚的回报。 通常&#xff0c;程序员在他们的编程生涯中会使用多种编程语言。然而&#xff0c;我们也看到&#xff0c;有些程序员一直在使用同一种编程语言。例如&#xff0c;我们经常遇到有几十年经验的 Java…

pd17虚拟机安装包:Parallels Desktop 17 激活版

Parallels Desktop 17 是一款功能强大的虚拟机软件&#xff0c;可以在 Mac 计算机上运行 Windows、Linux 和其他操作系统。使用 Parallels Desktop&#xff0c;您可以创建虚拟机并在其中安装各种操作系统&#xff0c;从而能够在同一台计算机上同时运行多个操作系统。 该软件具…

python解决一元一次方程组

无运用第三方库 # 有多个未知数&#xff0c;且包含 43x8-512y06a-512-2a-4b10 test -4b10 # 解决首个为负号的问题 if test[0]"-":last_fuhao test[0]test test[1:] else:last_fuhao "" # 因为要把符号也搬进去&#xff0c;所以有个初始的符号位 # pr…

华为仓颉编程语言正式发布,仓颉编程教程

目录 前言 基本概念 标识符 变量 类型 基础数据类型 表达式 if 表达式 while 表达式 for-in 表达式 程序结构 函数 定义函数 调用函数 lambda表达式 应用实例&#xff08;遍历目录&#xff09; 枚举 定义与实例化 成员访问规则 match表达式 应用实例&…

vue2脚手架笔记总结1

1.什么是组件 组件是实现局部代码和功能资源的集合 2.vue.config.js配置文件 使用vue inspect > output.js可以查看到Vue脚手架的默认配置,但是在这里面修改不会影响实际的配置&#xff0c;如果需要修改配置需要使用用vue.config.js文件&#xff0c;详情见:https://cli.vuej…

探索ONLYOFFICE桌面编辑器8.1:更强大的办公软件(新功能全新详解)

引入 时间到达2024年&#xff0c;办公软件已经成为不可或缺的的一部分。想到办公软件不知道大家首先想到那些产品 office 亦或是 WPS&#xff0c;但一个前者需要购买才能使用完整服务&#xff0c;一个漫天的弹广告不充会员什么都用不了。那难道世面上就没有一块正在好用无广告的…

每天认识:事件和中断

在计算机科学中&#xff0c;事件和中断是两种不同的概念&#xff0c;它们在操作系统和计算机硬件的上下文中有着不同的作用和含义&#xff1a; 事件(Event)&#xff1a; 事件通常指的是系统中发生的一个特定的行为或状态的改变&#xff0c;它可以是由用户操作触发的&#xff0c…

Clonable接口和拷贝

Hello~小伙伴们&#xff01;本篇学习Clonable接口与深拷贝&#xff0c;一起往下看吧~(画图水平有限&#xff0c;两张图&#xff0c;&#xff0c;我真的画了巨久&#xff0c;求路过的朋友来个3连~阿阿阿~~~) 目录 1、Clonable接口概念 2、拷贝 2、1浅拷贝 2、2深拷贝 1、Clon…

Linux学习第52天:Linux网络驱动实验(三):一往(网)情深

Linux版本号4.1.15 芯片I.MX6ULL 大叔学Linux 品人间百味 思文短情长 许久没有更新&#xff0c;的确是最近有点懈怠了。没有任何借口&#xff0c;接受所有的批评。接下来无论如何也要坚持下去&#xff0c;不管处于什么境地、什么原因&am…

免交互 实验

免交互 交互&#xff1a;我们发出指令控制程序的运行&#xff0c;程序在接收到指令之后按照指令的效果做出对应的反应。 免交互&#xff1a;间接的&#xff0c;通过第三方的方式把指令传送给程序&#xff0c;不用直接下达指令。 Here document 免交互 这是命令行格式&#…

解决Java中的数组越界异常的技术

解决Java中的数组越界异常的技术 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01; 在Java开发中&#xff0c;处理数组越界异常是一项关键的技术挑战。当我们访问…