跳到主要内容
Group
Group 是一种将多个表单控件组织在一起的组件,用于在一个表单中将相关的控件聚合到一起,以方便用户完成表单的填写。它可以支持多种类型的表单控件,如单选框、复选框、下拉菜单等,以及自定义的逻辑控件,如条件选项卡、条件字段等。
危险

mobile不支持该组件

示例

PCPhonePad
<page>
<group :editable='group2OuterEditable' :selectable="group2OuterSelectable" :data="group2OuterData" ref="sendtime" @selected="showLog" @unselected="showLog" >
<template slot-scope="cellData" slot="module" >
<form :clear-button="false" :confirm-button="false">
<item label="活动周期" name="a0">
<item node="date-picker" name="a1"></item>
<group :editable="{min:1,max:17}" :selectable="{multiple:true}" :data="[{data:1}]" name="a-group2" @selected="showLog" @unselected="showLog">
<template slot-scope="cellData" slot="module" >
<form layout="horizontal" :clear-button="false" :confirm-button="false" name="a-group2-form">
<item label="活动周期" name="a2" node="date-picker"></item>
<item label="每个奖励的库存" name="a3" node="date-picker"></item>
</form>
</template>
</group>
</item>
</form>
</template>
</group>
</page>

export default XPage({
data: {
group2OuterEditable: { min: 2, max: 4 },
group2OuterSelectable: true,
group2OuterData: [{ data: 1 }],
},
showLog(val) {
console.info(val);
},
});


Attributes

参数说明类型可选值默认值版本
data列表数据Array{disabled:false/控制单行删除按钮/,...otherNames}------
selectable是否显示选择器Boolean/Objecttrue/false/{multiple:true}false--
editable是否展示编辑器(添加/删除Boolean/Objecttrue/false/{参考editable配置}false----
beforeAdd添加项之前触发,获取添加项的数据Function--------
beforeRemove删除项之前触发,确认是否删除Function, data{index,data}--------
defaultProps指定内部取用data中指定的key的值,目前仅支持key唯一标识的配置,如:defaultProps={key:'value'};当需要自己管理唯一key的时候可结合该属性使用,以便group监听数据变化后每次可以避免重新创建实例Object{key:'xxx'}----PC--

editable

参数说明类型可选值默认值
editable是否展示编辑器(添加/删除)
editable.min最少数量Number1
editable.max最多数量Number
editable.addText添加按钮的文案String添加
editable.delText删除按钮的文案String删除

selectable

参数说明类型可选值默认值
selectable是否显示选择器
selectable.multiple是否为复选(radiobox/checkbox)Booleantrue/falsefalse

Event

名称说明回调参数
added添加项后触发
removed删除项后触发
selectedselectable开启后,选择器选中触发{selected:[],//选中的项 changed:[]//变化的项}
unselectedselectable开启后,选择器反选触发{selected:[],//选中的项 changed:[]//变化的项}

Method

名称说明入参出参
getData获取group的value{data//全部数据 , selected//已选择的项}
addItem在指定位置上添加itemindex//位置 newData//数据{}
removeItem删除指定位置的itemindex//位置{}
updateItem更新指定位置的itemindex//位置{}
moveItem移动指定位置的itemfromto
sortItem对item排序sortBy//函数,排序的规则,功能同Array.prototype.sort一样
getSubComponents返回refs实例
getItemInstances获取每个item中的form 实例,可以调用form 内部的方法 \n(可参考示例 表单提交&&动态添加数据){key:formInstance}
getSubmitData获取group的value

slot

名称说明
module每一项的模板