## 事件API支持
可以通过上述formDesignerExtend配置对象的event属性介入所需事件。
| 事件API | 事件描述 | 支持详情 |
| :--- | :--- | ---- |
| designerRendered | 表单设计器首次渲染完成后通知 | v7.1SP1+ [CAP4] |
| designerTabSwitched | 设计器标签页切换事件 | v7.1SP1+ [CAP4] |
| viewTabSwitched | 视图切换事件 | v7.1SP1+ [CAP4] |
| viewTableSelected | 当前视图表被选中事件 | v7.1SP1+ [CAP4] |
| fieldSwitched | 选中字段切换事件 | v7.1SP1+ [CAP4] |
| beforeSaveForm | 保存表单前触发 | v7.1SP1+ [CAP4] |
> 事件配置示例:
```javascript
//表单设计器事件API
window.formDesignerExtend = {
event: {
/*
* [1-1] 表单设计器首次渲染完成后通知
* * arguments: Object
* {
* formId: String //表单id
* formType: String //表单类型
* formBaseInfo: Object //表单基本信息
* }
* */
designerRendered: function(data){
//todo
},
/*
* [1-2] 设计器标签页切换事件
* arguments: Object
* {
* fromPage: Number, //切换前页签 eg: 1-表单设计 2-操作设置 3-应用绑定
* toPage: Number //切换后页签
* }
* */
designerTabSwitched: function(data){
//todo
},
/*
* [1-3] 视图切换事件
* arguments: Object
* {
* formId: String //表单id
* fromView: Object //跳转前视图信息 eg:
{
plat: "pc",
name: "差旅费报销",
id: "7681958030234698266"
}
* toView: Object //跳转后视图信息
* }
* */
viewTabSwitched: function(data) {
//todo
},
/*
* [1-4] 当前视图表被选中事件
* arguments: Object
* {
* formId: String //表单id
* currentViewId: String //当前视图id
* isMater: Boolean //是否为主表
* currentTable: Object //选中表信息
* }
* */
viewTableSelected: function(data) {
//todo
},
/*
* [1-5] 选中字段切换事件
* arguments: Object 字段信息
* {
* "id": "7966030540684413408",
"enumInfo": "6875661119798661104_false_0_",
"display": "二级业务类型描述",
"type": "select",
"relation": {},
"typeText": "下拉",
"name": "field0052",
"isCustomCtrl": false,
"enumName": "主数据业务",
"fieldType": "DECIMAL",
"fieldLength": "20,0"
* }
* */
fieldSwitched: function(data) {
//todo
},
/*
* [1-6] 保存表单前触发
* arguments: Object
* {
* formId: String //表单id
* formType: String //表单类型
* curPage: Number //当前页签 eg: 1-表单设计 2-操作设置
* }
* return: Boolean //false-不执行表单保存 true-继续原来的表单保存逻辑
* */
beforeSaveForm: function(data) {
//todo
return true;
},
/*
* [2-1] 关联对象列表生成前触发
* arguments:
* fieldInfo [Object] 字段信息
* allFieldMap [Object] 所有字段映射信息
*
* return:
* [Array] 一个字段可以关联的所有字段
*
* eg:
* [
* { "value": "field0015", "text":"申请人[选人]" },
* { "value": "field0016", "text":"供职部门[选部门]" },
* ]
*
* [注]
* 1、回调不能包含异步操作
* 2、若返回值不为标准的字段信息数组,则回调不生效
* */
beforeRelationObjRender: function(fieldInfo, allFieldMap) {
//todo
}
}
};
```
- 概要
- 技术介绍
- 框架与环境
- vue开发
- 开发规范
- 前端开发规范
- 总体原则
- HTML规范
- HTML&css规范
- vue编码规范
- Javascript规范
- 后端开发规范
- cap4
- 自定义控件
- 前端2.0(PC+移动)
- PC前端
- 后端
- 移动端
- 移动端接口
- 低版本协同升级到V5 8.0适配说明
- 自定义按钮
- 自定义按钮(无流程)
- 自定义控件(列表插槽)
- 自定义按钮(筛选条件)
- 低版本协同升级到V5 8.0适配说明
- 门户空间
- 门户与栏目挂载
- 栏目开发及流程说明
- 页面模板
- 客开通路及插件体系
- 表单设计器扩展配置
- 使用步骤
- 配置说明
- 事件API
- Demo示例
- 运行态客开通路
- 插件使用步骤
- 插件接口
- 事件接口
- 钩子相关接口
- 表单操作接口
- Demo示例
- 插件机制
- 表单运行态接口(旧)
- 白名单插件
- 版本记录
- vue组件库
- 开发指南
- 开发文档规范
- 业务组件介绍
- 业务组件
- table组件
- 分页组件
- title组件
- 统计排队组件
- code组件
- 条件筛选
- 批量导入
- 上传Excel
- 批量更新
- 批量刷新
- UI组件
- 按钮组件
- 复选组件
- 取色器组件
- 示例组件
- 水平选择组件
- 选图标组件
- 提示组件
- 单选组件
- 搜索组件
- 选择组件
- 穿梭框组件
- 标签组件
- 文本组件
- 树组件
- 验证组件
- 菜单组件
- iframe组件
- toolbar
- 统计组件
- 饼图
- 柱状图
- 图标
- 业务关系开发指南
- 自定义触发
- 自定义关联
- 后端API
- 更新表单数据缓存
- 发起表单流程
- 取得指定表单PDF或截图
- 无流程批量添加
- 无流程批量删除
- 无流程批量更新
- 无流程批量导出
- 客开培训文档
- Vue基础培训
- Vue实战培训
- Vue进阶培训
- VueCLI3培训
- cap3
- 自定义控件
- 后端
- 移动端
- 前端编译
- 表单运行态接口
- 协同云