YuiForm

基础用法

属性说明
:labelPositiontop / left / right表单域标签的位置, 当设置为 left 或 right 时,则也需要设置 label-width 属性
:inlinetrue/false行内表单模式
:rulesFormRules表单验证规则
:labelWidthstring/number标签的长度,例如 '50px'。 作为 Form 直接子元素的 form-item 会继承该值。 可以使用 auto。
:model-表单数据对象
:field-list-表单项列表

引入组件

import { YuiForm } from "@/components/Form/index";

export default defineComponent({
  components: {
    YuiForm
  },
  
  setup(props) {
    const formData = reactive({
      fieldForm: {name:"ES meetup"},
      fieldList: [
        {
          field: "name",
          name: "活动名称",
          mold: "Input",
          formType: "text",
          // 检验唯一性
          isNull: 1,
        },
        {
          field: "region",
          name: "活动区域",
          mold: "Select",
          formType: "select",
          setting: [
            {
              label: "区域一",
              value: 0,
            },
            {
              label: "区域二",
              value: 1,
            },
          ],
        },
        {
          field: "date",
          name: "活动区域",
          mold: "Date",
          formType: "datetime",
        },
        {
          field: "deliver",
          name: "即时配送",
          mold: "Select",
          formType: "switch",
        },
        {
          field: "type",
          name: "活动性质",
          mold: "Select",
          formType: "checkbox-group",
          setting: [
            {
              label: "美食/餐厅线上活动",
            },
            {
              label: "地推活动",
            },
            {
              label: "线下主题活动",
            },
            {
              label: "单纯品牌曝光",
            },
          ],
        },
        {
          field: "resource",
          name: "资源",
          mold: "Select",
          formType: "radio-group",
          setting: [
            {
              label: "线上品牌商赞助",
              value: 0,
            },
            {
              label: "线下场地免费",
              value: 1,
            },
          ],
        },
        {
          field: "desc",
          name: "活动形式",
          mold: "Input",
          formType: "textarea",
          rows: 3,
        },
      ],
    });
    return {
      formData,
    };
  },
  
 )

使用标签:

 <yui-form 
 :field-list="formData.fieldList" 
 :field-form="formData.fieldForm"  
 />

效果

图片YuiForm

Last Updated:
Contributors: wangyifan