amis/docs/zh-CN/components/form/group.md
liaoxuezhi 65ac422ed6
1.2.x 文档&示例配置调整 (#2064)
* 补充容错

* fix: form 中 name 关联顶层数据初始化失效

* 更新 examples

* 文档调整

* 删除多余的文档, 调整 schema

* schema 调整

* schema 调整

* control 类型容器 control 改成 body

* 修复一个选项加载的bug

* form 注册直接用 type
2021-06-07 10:09:55 +08:00

4.0 KiB
Executable File
Raw Blame History

title description type group menuName icon order
Group 表单项组 0 null Group 24

表单项默认都是一行显示一个Group 组件用于在一行展示多个表单项,会自动根据表单项数量均分宽度。

基本用法

{
  "type": "form",
  "body": [
    {
      "type": "group",
      "body": [
        {
          "type": "input-text",
          "name": "text1",
          "label": "文本1"
        },
        {
          "type": "input-text",
          "name": "text2",
          "label": "文本2"
        }
      ]
    },
    {
      "type": "divider"
    },
    {
      "type": "group",
      "body": [
        {
          "type": "input-text",
          "name": "text3",
          "label": "文本3"
        },
        {
          "type": "input-text",
          "name": "text4",
          "label": "文本4"
        },
        {
          "type": "input-text",
          "name": "text5",
          "label": "文本5"
        }
      ]
    }
  ]
}

展示

可以给group组件设置mode调整展示模式,用法同 Form 展示

下面group我们配置了"mode": "horizontal",观察显示情况

{
  "type": "form",
  "body": [
    {
      "type": "input-text",
      "name": "text",
      "label": "文本"
    },
    {
      "type": "divider"
    },
    {
      "type": "group",
      "mode": "horizontal",
      "body": [
        {
          "type": "input-text",
          "name": "text1",
          "label": "文本1"
        },

        {
          "type": "input-text",
          "name": "text2",
          "label": "文本2"
        }
      ]
    }
  ]
}

当表单在水平模式下时,如果group内表单项设置"label": false,会导致布局错乱,如下

{
  "type": "form",
  "mode": "horizontal",
  "body": [
    {
        "type": "input-text",
        "name": "text",
        "label": "文本"
    },
    {
        "type": "divider"
    },
    {
      "type": "group",
      "body": [
        {
          "type": "input-text",
          "name": "text1",
          "label": false
        },
        {
          "type": "input-text",
          "name": "text2",
          "label": false
        }
      ]
    }
  ]
}

这时可以给group配置label属性,保持和其他表单项布局统一

{
  "type": "form",
  "mode": "horizontal",
  "body": [
    {
        "type": "input-text",
        "name": "text",
        "label": "文本"
    },
    {
        "type": "divider"
    },
    {
      "type": "group",
      "label": "文本组",
      "body": [
        {
          "type": "input-text",
          "name": "text1",
          "label": false
        },
        {
          "type": "input-text",
          "name": "text2",
          "label": false
        }
      ]
    }
  ]
}

属性表

属性名 类型 默认值 说明
className string CSS 类名
label string group 的标签
body Array<表单项> 表单项集合
mode string 展示默认,同 Form 中的模式
gap string 表单项之间的间距,可选:xssmnormal
direction string "horizontal" 可以配置水平展示还是垂直展示。对应的配置项分别是:verticalhorizontal