vue3 依赖-组件formpage-vue3说明文档,表单页快速开发,使用思路及范例(Ⅰ)配置项文档

9 篇文章 0 订阅
1 篇文章 0 订阅

引入

npm i element-plus
npm i formpage-vue3

思路介绍

本组件是基于element-UI进行快速搭建表单页的依赖,为前端静态逻辑处理,方便基础表单的渲染,将栅格属性,基础校验交由组件内部进行实现

最简示例

<template>
  <FormPage :formConfig="searchConfig" v-model="formData" />
</template>

<script setup>
import FormPage from './FormPage/index.js'
import componentsText from './componentsText.vue'
import { ref, markRaw } from 'vue'
const formData = ref({})
const searchConfig = ref([
  {
    label: '输入',
    type: 'input',
    key: 'test',
  },
  {
    label: 'noLabel',
    type: 'ElInput',
    key: 'noLabel',
  },
  {
    label: 'inputNumber',
    key: 'zh',
    type: 'el-input-number',
    defaultValue: 1,
  },
  {
    label: '日期',
    key: 'rq',
    type: 'date-picker',
    bind: {
      type: 'date',
      valueFormat: 'YYYY年MM月DD日',
      format: 'YYYY年MM月DD日',
    },
  },
  {
    label: '时间',
    type: 'times',
    startDefaultValue: '2023-04-07 00',
    endDefaultValue: '2024-04-07 23:59:59',
    startBind: {
      label: '时间',
      valueFormat: 'YYYY-MM-DD HH',
      format: 'YYYY-MM-DD HH',
    },
    endBind: {
      label: '结束时间',
    },
  },
])
</script>

在这里插入图片描述

TablePage-vue3 API汇总

属性

属性名说明类型默认值
modelValue双向绑定,表单数据Object{}
formConfig表单项配置,详见formConfig-typeArray[]
span表单栅格占据的列数(24栅格布局)[Number, String]24
validateHandle外部校验函数,返回String时,该String将作为异常抛出,返回Array<String>时,每个String都作为单独异常进行抛出Function() => ‘’
showText非表单模式,仅显示内容,不渲染表单输入Boolean-

插槽

插槽名说明
[你设定的slotName]本组件内部使用了大量的动态组件,方便配置,可阅读文档自行设置插槽名

Exposes

值名说明
validate()执行表单校验

自定义对象

formConfig(array<object> 类型)

属性名说明类型默认值
key字段key值,该值将作用于表单modelValue的key值,当type为times时详见当type=times时String-
type详见下文 formConfig-typeString/vue3Component‘input’
label表单标签文本String-
noLabel搜索表单无标签文本标识,为true时将不显示标签文本Booleanfalse
bind表单搜索项属性绑定,将直接作用于表单筛选框的绑定,当type为times时详见当type=times时Object默认值可详见当type不为时间类型时 bind默认值当type为时间类型时 bind默认值
defaultValue默认参数,当type为times时详见当type=times时String-
slotName插槽名称 将整个搜索项暴露给父页面进行使用String-
childSlot子插槽名,当组件结构为<el-select><el-option><\el-option></el-select>时,可将type设置为 select,通过子插槽渲染optionString-
notNull必填项声明,填写时将对该项是否填写进行校验Boolean-
isInt整数填写声明,填写时将对该项是否为整数进行校验Boolean-
isNumber数值【仅正数】填写声明(小数),填写时将对该项是否为数值进行校验,当接受参数为数字时,该数字将被作为小数位数参与校验,当为true时,小数位数长度不限制[Boolean,Number]-
isMinusNumber数值【可负数】填写声明(小数),填写时将对该项是否为数值进行校验,当接受参数为数字时,该数字将被作为小数位数参与校验,当为true时,小数位数长度不限制[Boolean,Number]-
当type=times时

属性名说明类型默认值
key字段key值,该值将作用于表单搜索时向接口所发送的字段key,当type=times时字段固定无法修改startTime,endTime
startDefaultValue开始时间默认参数String-
endDefaultValue结束时间默认参数String-
startBind开始时间属性绑定Object详见 当type为时间类型时 bind默认值
endBind结束时间属性绑定Object详见 当type为时间类型时 bind默认值
当type不为时间类型时的 bind默认值(Object类型)

属性名默认值
placeholderlabel的值
clearabletrue
stylewidth: 200px
当type为时间类型时的 bind默认值(Object类型)

属性名默认值
stylewidth: 190px
typedatetime
placeholder请选择时间
formatYYYY-MM-DD HH:mm:ss
valueFormatYYYY-MM-DD HH:mm:ss
  • 26
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_默_

别打赏了,点点赞,点点关注就行

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值