危险
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/Object | true/false/{multiple:true} | false | -- | |
| editable | 是否展示编辑器(添加/删除 | Boolean/Object | true/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 | 最少数量 | Number | 1 | |
| editable.max | 最多数量 | Number | ||
| editable.addText | 添加按钮的文案 | String | 添加 | |
| editable.delText | 删除按钮的文案 | String | 删除 |
selectable
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|---|---|---|---|---|
| selectable | 是否显示选择器 | |||
| selectable.multiple | 是否为复选(radiobox/checkbox) | Boolean | true/false | false |
Event
| 名称 | 说明 | 回调参数 |
|---|---|---|
| added | 添加项后触发 | 无 |
| removed | 删除项后触发 | 无 |
| selected | selectable开启后,选择器选中触发 | {selected:[],//选中的项 changed:[]//变化的项} |
| unselected | selectable开启后,选择器反选触发 | {selected:[],//选中的项 changed:[]//变化的项} |
Method
| 名称 | 说明 | 入参 | 出参 |
|---|---|---|---|
| getData | 获取group的value | 无 | {data//全部数据 , selected//已选择的项} |
| addItem | 在指定位置上添加item | index//位置 newData//数据 | {} |
| removeItem | 删除指定位置的item | index//位置 | {} |
| updateItem | 更新指定位置的item | index//位置 | {} |
| moveItem | 移动指定位置的item | from | to |
| sortItem | 对item排序 | 无 | sortBy//函数,排序的规则,功能同Array.prototype.sort一样 |
| getSubComponents | 返回refs实例 | 无 | 无 |
| getItemInstances | 获取每个item中的form 实例,可以调用form 内部的方法 \n(可参考示例 表单提交&&动态添加数据) | 无 | {key:formInstance} |
| getSubmitData | 获取group的value | 无 | 无 |
slot
| 名称 | 说明 |
|---|---|
| module | 每一项的模板 |