---
description: "E10 Utils 组件扩展与钩子分类检索路由"
---

# 组件扩展与钩子

组件参数复写、组件替换、插件注册、覆盖链和错误边界。

触发词：`组件复写`、`组件替换`、`无侵入二开`、`插件`、`weId`、`错误边界`

## 按需加载规则

1. 精确命中能力名或导出符号时，直接读取对应知识卡。
2. 仅命中场景时，从下表选择最多三个候选卡。
3. 知识卡不足时，再读取卡片链接的完整原始文档。

## 能力列表

| 能力 | 场景摘要 | 知识卡 |
|---|---|---|
| `middleware` | 组件化方便了无侵入二次开发能力扩展，类似 E9 后续扩展的 ecode 组件无侵入修改能力，本次默认在工具库提供规范的埋点和二开注册能力，将覆盖更大范围的组件，不再仅限于公共组件库的组件。 参考一平台前端无侵入研发规范 | [加载](../cards/middleware.md) |
| `overwriteFn` | 返回一个新函数,队列函数倒序执行执行,将当前函数的执行结果作为下一个函数的入参 | [加载](../cards/overwriteFn.md) |
| `regReactChildren` | 给已有 children 属性注入新的 ReactNode | [加载](../cards/regReactChildren.md) |
| `getReactPlugin` | 获取当前已经注册的插件 | [加载](../cards/getReactPlugin.md) |
| `regReactPlugin` | 修改设置标签内的 title,placeholder 属性内容 | [加载](../cards/regReactPlugin.md) |
| `checkWeId` | 直接导入 checkWeId 方法进行校验 | [加载](../cards/checkWeId.md) |
| `documentTitle` | documentTitle 为 DocumentTitle 构造器创建的实例。 | [加载](../cards/documentTitle.md) |
| `classUseMemo` | 只执行一次,并缓存下来 | [加载](../cards/classUseMemo.md) |
| `errorBoundary` | 工具库中 middleware 的内部实现中使用了 ErrorBoundary | [加载](../cards/errorBoundary.md) |
