热搜: 活动 交友 discuz

NEO表单扩展开发

2022-7-11 18:04| 发布者: admin| 查看: 302| 评论: 0

摘要: NEO表单扩展开发
Neo Extension以低代码的开发方式,为开发者扩展标准组件提供支持,目前提供了表单页的扩展能力。下面将介绍常见NEO表单场景扩展开发示例。
一、表单字段的隐藏、禁用、必填
隐藏:通过配置"hidden": true或者"visible": true来隐藏表单项;

禁用:通过配置"disabled": true来禁用表单项;

必填:通过配置"required": true来标识该表单项为必填。

二、表单项增加 labelAfter 按钮,配置"actionType":"ajax"和api,可以实现 ajax 请求,请求成功后,显示反馈弹框。

三、数据联动
扩展的数据联动主要依赖字段的 onChange() 和 onBlur() 函数。使用 ctx.helper.setMasterFormValue() 修改字段的值。
主表单项数据跟随联动:
场景:customItem1__c值发生变化时,customItem2__c变为“数据联动测试”。

代码示例:

子表联动主表数据:

场景:对子实体 customEntity154__c 进行扩展操作,当子表中字段customItem6__c值发生变化时, 修改主表字段 customItem2__c 的值为"联动测试"。

子表单行数据联动:
场景:子表单行数据某个字段的值发生变化,当前行的另外几个字段值也会根据计算规则随之发生变化。customEntity154__c 进行扩展操作,当子表中字段customItem6__c值发生变化时, 修改子表当前行字段 customItem4__c 的值。

Tips:主表联动子表数据,暂不支持。
Note:一些不能通过属性完成的扩展以及一些生命周期函数的扩展,放在 extension 属性中完成。extension 是与 controls 和 subControls 是平级的属性。
一些需求场景需要对关联关系回调的数据进行一些处理,比如一些销售业绩数据的计算回填我们可以在 extension 对象的 onReferencePickerChange 属性来完成,批量创建回调的数据处理,用onBatchPickerChange 属性来完成
判断对应关联关系字段的 apiKey ,然后进行数据处理与数据联动。
四、NEO表单常见使用技巧
如何验证Neo表单:
浏览器打开开发者工具,network里加载的接口里有没有initData开头的请求。

预览扩展代码时候为什么没有成功?
(1) 检查是否打开了表单或者要预览的页面;
(2) 检查扩展代码是否有问题:
① 扩展代码第一行不要空行;
② 扩展代码结尾不要加双引号;
③ 检查扩展点编写位置是否有红色报错
④ 检查 objectApiKey 是否正确
⑤ 检查 json 结构是否正常,注意 view 中的结构
⑥ 检查是否使用空扩展执行了预览。


知识类文档