# plugin-module-structure

## 适用范围

- 涉及新增插件、修改 `src/plugin/*` 结构、决定插件代码是否上提公共层时必读。

## 标准结构

- 插件目录默认落点：`src/plugin/<plugin>`
- 插件内部优先自洽，常见子目录包括：
  - `api`
  - `view`
  - `form`

## 强制规则

- 插件自己的页面、表单、接口优先放在插件目录内部，不要一开始就散落到主应用公共目录。
- 插件必须复用主应用的 `@/utils/request`、`@/pinia`、`@/style`、`@/components` 能力，禁止复制全局基础设施。
- 只有被多个插件或主应用反复复用的能力，才允许从插件目录上提到公共目录。
- 插件若接入主应用菜单、权限、路由，必须回查主应用 `router / permission / pinia` 链路。

## 常见错误

- 为插件单独复制一份 request、bus、style 覆盖逻辑。
- 插件里的组件刚出现一次就提升为全局组件。
- 插件 API 改了，但没有同步检查插件页面和主应用集成点。
