mirror of
https://github.com/nocobase/nocobase
synced 2024-11-15 20:26:29 +00:00
b8d0ad8fbc
* feat: update docs * feat: update docs * fix: update docs * Add files via upload * Add files via upload * Update the-first-app.md * Update the-first-app.md * Update v08-changelog.md * feat: update docs Co-authored-by: Zhou <zhou.working@gmail.com>
42 lines
816 B
Markdown
42 lines
816 B
Markdown
# 生命周期
|
|
|
|
## 应用的生命周期
|
|
|
|
<img src="./index/app-flow.svg" style="max-width: 380px;" />
|
|
|
|
## 插件的生命周期
|
|
|
|
<img src="./index/pm-flow.svg" style="max-width: 600px;" />
|
|
|
|
## 插件的生命周期方法
|
|
|
|
```ts
|
|
import { InstallOptions, Plugin } from '@nocobase/server';
|
|
|
|
export class MyPlugin extends Plugin {
|
|
afterAdd() {
|
|
// 插件 pm.add 注册进来之后,主要用于放置 app.beforeLoad 的事件。
|
|
}
|
|
beforeLoad() {
|
|
// 所有插件执行 load 之前,一般用于注册类和事件监听
|
|
}
|
|
async load() {
|
|
// 加载配置
|
|
}
|
|
async install(options?: InstallOptions) {
|
|
// 安装逻辑
|
|
}
|
|
async afterEnable() {
|
|
// 激活之后
|
|
}
|
|
async afterDisable() {
|
|
// 禁用之后
|
|
}
|
|
async remove() {
|
|
// 删除逻辑
|
|
}
|
|
}
|
|
|
|
export default MyPlugin;
|
|
```
|