E10 开发规范

发布于 2026-08-05

E10 开发规范

常见的开发规范就不说了,谁要是命名再用拼音简写就拉出去枪毙。

前端开发规范

组件必需通过样式名添加二开标记

任何通过二开在页面上添加元素的组件(比如弹窗、按钮、表格等),都必需在组件的样式名上注明二开标记,如:“ecode 应用id,代码入口(是ecode还是 表单js)”,方便定位二开代码编写位置。

这个源自之前的经历,我经常碰到这个按钮不知道是在哪里开发添加的,找的很痛苦

示例:

  • appid-${appId} 为ecode 应用id
  • seconddev-ecode 表示这是在 ecode 二开添加的
<Button onClick={handleClick} className={'appid-${appId} seconddev-ecode'} >下载为PDF</Button>

每个 E-Code 应用必需添加说明文档

在每个 E-Code 应用添加 README.md 文件,说明作者信息,开发的内容,如何配置等,方便了解这个应用的功能是什么,方便后续维护。

示例:

# EB列表单元格合并开发说明
作者:泛微柳州 姚礼林  
日期:2026-02-26

## 实现功能
e-builder 表格可合并重复数据的单元格,如果表格中的字段存在连续重复,则进行合并。 
- 可配置合并依据字段,如果该字段存在连续重复,则合并这些单元格
- 可配置其它需要合并的字段,在合并依据字段合并时,如果这些字段的值也相同,则进行合并
- 可对每个 e-builder 表格配置合并

合并前:

![](/api/docs-static/%E6%B3%9B%E5%BE%AE%E5%BC%80%E5%8F%91/E10/%24%7BappMdRes%7D/1772070902-image.png)
合并后:

![](/api/docs-static/%E6%B3%9B%E5%BE%AE%E5%BC%80%E5%8F%91/E10/%24%7BappMdRes%7D/1772070927-image.png)

## 配置说明
需修改 `config/config.js` 文件,需配置需要合并的eb表格,在配置中的表格才进行合并。  
配置示例:

const config = { viewConfigs :[ { // 列表id,通过链接地址获取,例如链接包含: // /sp/ebdapp/build/1211771683381723136/search/1211771941323030537-7516533764297595633? // 则取 1211771941323030537 id:'1240398310603153522', // 主键字段名,必填,按此字段合并单元格,值相同且上下连续时合并 primaryKeyField:'supplier', // 其它需要合并单元格的字段名,可为空 mergeColFieldNames:['produce'] }, { // 其它表格配置 } ] }

export default config;

在 `viewConfigs` 中可配置多个表格

建议-对于每个接口拦截、组件参数重写,都输出日志到控制台

这是为了判断页面是否被二开影响,如果不知道这是二开过的,比如通过组件参数重写去除了页面中的选择项,不知道的人就比较难判断出是什么原因。

比如下面的例子,去除了页面 `Radio` 组件其中一个选项,去除之后就在控制台中输出日志,这样就能比较好知道是通过二开进行修改了。

/**
 * 流程加签对话框中去掉"审批环节类型"选择中的“查阅”选项
 * @author yaolilin
 */
regOvProps('weappUi', 'Radio', (props) => {
  try {
    // 确保是流程表单
    const sdk = window.WeFormSDK?.getWeFormInstance();
    if (props.weId?.endsWith('_ryuinw') && sdk) {
      if (props.data) {
        props.data = props.data.filter(i => i.content !== '查阅');
        console.log('组件参数重写:流程加签对话框中去掉"审批环节类型"选择中的“查阅”选项')
      }
    }
  } catch (e) {
    console.error('加签对话框中审批环节类型选择去掉查阅出错', e)
  }

  return props;
}, 1);

后端开发规范

参考:二次开发规范说明文档