# JS增强触发弹窗
JS增强触发弹出的表单可以是 online表单 也可以是 自定义开发的表单。
# 使用说明
- 支持按钮 :按钮样式[button]+按钮类型[js] 或者 按钮样式[link]+按钮类型[js]
- js增强弹框方法:this.openCustomModal,方法参数如下表
参数名 | 类型 | 描述 |
---|---|---|
title | string | 弹框标题,默认 '自定义弹框' |
width | int | 弹框宽度,默认600 |
row | object | 操作的数据,如果是button按钮,不设置则默认为当前选中行的数据,如果是link按钮,需要传入函数自带参数row |
formComponent | string | 自定义弹框内表单组件地址,设置的格式和系统菜单组件值的配置一样,如果没有设置,则弹框默认打开的是当前表单 |
requestUrl | string | 表单提交地址,如不设置,则默认表单提交地址为原online编辑地址,formComponent未设置时生效 |
hide | array | 隐藏的表单控件名, formComponent未设置时生效,可以使原表单的某些控件隐藏 |
show | array | 显示的表单控件名, formComponent未设置时生效 ,如果设置,hide参数失效(show与hide互斥),且只有该数组内的控件才会显示 |
# 具体场景
# 场景一、button按钮触发弹窗online表单
1.添加按钮:按钮样式[button],按钮类型[js],按钮编码test1对应增强函数名
2.添加 list页面的js增强
test1(){
this.openCustomModal({
title: '测试自定义弹框1',
width: 800
});
}
# 场景二、link按钮触发弹窗online表单,并控制字段显隐
1.添加按钮:按钮样式[link],按钮类型[js],按钮编码test2对应增强函数名
2.添加 list页面的js增强
test2(row){
this.openCustomModal({
row: row,
title: '测试自定义弹框2',
width: 800,
hide: ['age', 'sex']
});
}
link按钮和button的区别在于,link按钮需要手动传入参数:row,button按钮默认不需要传入,但是操作的时候需要先选中数据。