# 前端改造点

# 改造文档Excel：[https://www.e-cology.com.cn/sp/doc/docShare/1048588403880042503?tenantKey=t7akvdnf84](https://www.e-cology.com.cn/sp/doc/docShare/1048588403880042503?tenantKey=t7akvdnf84)

## 1、前端本质上的改造内容为三个要点：

- **要点1**：按需:。独立部署是扩展功能，应用场景和需求的客户较少，不能导致线上现有的老功能功能逻辑发生改变，例如客户原本访问某链接能正常打开页面，不能改造后路由变化无法打开了。因此需要按需处理；
- **要点2**：第一时间获取到appId。
- **要点3**：将appId传入前台的每一个EB的请求

## 2、改造内容

### 2.1 前端按需判断引用是否是独立部署应用的方法：

```javascript
import { isEbRuntimeApp } from '@weapp/utils'
isEbRuntimeApp?.(appId); // true 则是独立部署的app
```

### 2.2 为了第一时间获取appId，就需要改造前台路由和后台路由的生成规则；

e-Buidler服务的api接口(包括：/api、/sapi、/papi）需改为动态路由，支持动态路径路径变量。

| 编号 | 现有接口（案例） | 动态API接口（$appId是应用ID，Long型） |
| --- | --- | --- |
| 1 | /api/ebuilder/form/obj | /api/ebuilder$appId/form/obj |
| 2 | /api/app/ebuilder/form/obj | /api/app/ebuilder$appId/form/obj |
| 3 | /papi/ebuilder/form/obj | /papi/ebuilder$appId/form/obj |
| 4 | /papi/app/ebuilder/form/obj | /papi/app/ebuilder$appId/form/obj |

路由改造：/api/ebuilder/form --\> /api/ebuilder$appId/form

组件间支持动态路由改造：  apiModule: ebuilder/form --\> ebuilder$appId/form

后台：生成路由改造

外部组件对接
