标题控制:
- id: '模块id',例如:dont_post_view1
- name: '模块标题',例如:***信息
- open: false, 初始是否是展开的
- pages:[] 此模块下的项目
- showby:'identityType,=,1' 展示的条件,默认展示
showby总结: 下面符合条件的时候展示控件或内容:
- 三个一组,同一个用逗号隔开。例如 : 'identityType,=,1'
- || 或条件
- && 且条件
- 都是逗号,是 且(&&)
- show 是否在展示 例如:'g29,show,true'
- =当值等于的时候
- \> 当值大于的时候
- < 当值小于的时候
- <> 当不等于的时候
- in 当值在 后面的范围内,范围用 '| '分割 例如:'g19,in,G19_5|G19_6|G19_7'
- include 当值包含后面的时候返回true
- notinclude 当值不包含的时候
- empty 当值为空/非空的时候 例如:'kfxqNum,empty,false''kfxqNum,empty,true'
- showrelation :给这个组件打上标签,减少showby的调用。 例如:
{
name: '11',
type: 'radio',
field: 'g39',
showby: "o14,>,5,g7,=,G7_2",
showrelation: ['g7','g8'],
label1: '是',
label2: '否',
value1: 'G39_1',
value2: 'G39_2',
}
给 这个控件打上'g7' 'g8' 标签,当g7或者g8变化的时候才会计算这个控件的showby.。 如果不加,其他任何控件变化都要重新计算这个控件的显隐
子项控制
- name:控件的名称
- field : 控件对应的字段
- showby: 同上
- showrelation : 同上
- style :动态样式,这个是直接设置的动态行间样式,所以要依据规范来写 例如:style: 'width:40%',
- notrequired:是否是非必填项 boolean类型 例如: notrequired: true,
- notsubmit : 是否不提交, boolean 不提交就设置为true,否则不需要设置
- readonly : 是否只读 boolean 默认false
- type :组件的类型,通过这个组件来进行匹配,可自定义,然后进行使用即可
目前有:title text images roster select radio date sysdict sysdict-multi - type==radio 只支持两个,默认 是(1)否(2)
- label1 value1 第一个选项的
- label2 value2 第一个选项的 例如:
{
name: '现常住地址',
type: 'radio',
label1: '市内',
label2: '市外',
value1: 'R_2',
value2: 'R_1',
field: 'changzhuAddressButongType',
showby: "changzhuAddressType,=,R_2",
showrelation: ['changzhuAddressType']
}
- type==select 单选列表 此用法较复杂,自己细品。其实这种特定的组件的参数设置,就和你定义组件时的想法有关了,此处主要作用就是传值
- list :[] 备选项 例如:
{
name: '<span style="color:#ff0000">[标识]</span>就读学校',
subname: '(subname)',
nameadd: '<span style="color:#ff0000">[标识]</span>',
nametip: 'nametip,
type: 'select',
field: 'g14',
showby: 'o14,<,15||g13,>,G13_1',
showrelation: ['o14', 'g13', 'g12'],
notrequired: true,
relations: [{
where: 'g16,show,true,this,>,&&g16,<>,G16_2||g19,<>,G19_1',
then: [{
op: 'tip&goon',
tip: 'tip',
},
{
op: 'force-set',
field: 'g16',
value: 'G16_2',
},
{
op: 'force-set',
field: 'g19',
value: 'G19_1'
}
]
},
{
where: 'this,=,,g19,=,G19_1',
then: {
op: 'force-set',
field: 'g19',
value: ''
}
},
{
where: 'this,=,,g16=,G16_2',
then: {
op: 'force-set',
field: 'g16',
value: ''
}
}
],
list: [{
name: '不填报此项',
value: ''
},
{
value: 'G14_1',
name: '普通'
},
{
value: 'G14_2',
name: '特殊'
}
]
}
- type==multi-select :
- maxchecked:当type==multi-select 时有这个字段, 标识最多选几个 例如:
name: 'name',
subname: '(按数量从多到少,择1-3条)',
type: 'multi-select',
showby: "g7,=,G7_2",
showrelation: ['g7'],
maxchecked: 3,
field: 'shouruly',
list: [{
value: 'R_1',
name: '工资收入'
}]
- maxlength :最大长度 int 例如:maxlength: 10
- validate : 格式验证 array[] 例如:
validate:[{
checkType: 'cn',
errorMsg: '联系人姓名只能填写中文'
}]
-
placeholder:占位符 默认 请输入 +name 例如:placeholder: '请继续输入小区、单元、门牌号等信息',
-
subname : 跟在name后面 例如:subname: '(20周岁及以上填报)',
-
required_relation: 相关连的一项 最多两项,提示两项最少选一项 例如:required_relation: 'g6B', 此项和g6不能同时为空
-
relations:选中后的关联操作 arry类型 。 例如:
{
name: 'name',
type: 'radio',
label1: 'label1',
label2: 'label2',
value1: 'G3_1',
value2: 'G3_2',
field: 'g3',
relations: [{
where: 'this,=,G3_2,g27A_g27B,include,G27B_6', //规则和showBy一致,不过作用是返回true和false
then: [{ //进行的操作
field: 'g27A_g27B',
op: 'force-remove',
value: 'G27B_6'
}]
}, {
where: 'true',
then: [{
field: 'jiti',
op: 'force-set',
value: '',
comprelations: 'true'// 当op是 force-set,这个字段为true,会将field 设置为value
}]
}],
}
- op的介绍:
- tip&stop 停止操作并给出提示 例如:
{
where: 'this,<>,G8_1,dbType,=,1',
then: {
op: 'tip&stop',
tip: 'tip',
}
}
- config-add :给这个的控件增加配置 将field 控件的的 value 设置为true 例如:
{
op: 'config-add',
field: 'g43',
value: 'notrequired'
}
- config-remove : 移除一条 配置 例如:
{
op: 'config-remove',
field: 'g43',
value: 'notrequired'
}
- tip&goon :提示,并且继续运行 例如:
{
op: 'tip&goon',
tip: 'tip',
}
- confirm :确认是否继续进行 例如:
{
op: 'confirm',
tip: 'tip',
}
- force-set : 强制设置
- force-add :强制添加 和 例如:将 field字段中,添加value
then: [{
op: 'tip&goon',
tip: 'tip',
}, {
op: 'force-add',
forceremove: 'G27A_5',
field: 'g27A_g27B',
value: 'G27B_3'
}]
- force-remove :强制移除 例如:
then: [{
field: 'g27A_g27B',
op: 'force-remove',
value: 'G27B_6'
}]
- plusfield :在获取上传数据的时候,如果表单中的数据不为空,则将表单中plusfield的值赋值给待提交数据的plusfield 例如:
{
name: 'name',
type: 'multi-select-plus',
field: 'peixunWxq_peixunXq',
showby: 'o14,>,15,o14,<,60,g7,=,G7_2',
showrelation: ['g7', 'o14'],
plusfield: 'peixunXqQt',
}
网友评论