ECS Framework API / PluginManager
Class: PluginManager
Defined in: packages/core/src/Core/PluginManager.ts:30
插件管理器
负责插件的注册、安装、卸载和生命周期管理。 支持依赖检查和异步加载。
Example
const core = Core.create();
const pluginManager = core.getService(PluginManager);
// 注册插件
await pluginManager.install(new MyPlugin());
// 查询插件
const plugin = pluginManager.getPlugin('my-plugin');
// 卸载插件
await pluginManager.uninstall('my-plugin');Implements
Constructors
Constructor
new PluginManager():
PluginManager
Returns
PluginManager
Methods
initialize()
initialize(
core,services):void
Defined in: packages/core/src/Core/PluginManager.ts:57
初始化插件管理器
Parameters
core
Core实例
services
服务容器
Returns
void
install()
install(
plugin):Promise<void>
Defined in: packages/core/src/Core/PluginManager.ts:71
安装插件
会自动检查依赖并按正确顺序安装。
Parameters
plugin
插件实例
Returns
Promise<void>
Throws
如果依赖检查失败或安装失败
uninstall()
uninstall(
name):Promise<void>
Defined in: packages/core/src/Core/PluginManager.ts:123
卸载插件
Parameters
name
string
插件名称
Returns
Promise<void>
Throws
如果插件未安装或卸载失败
getPlugin()
getPlugin(
name):undefined|IPlugin
Defined in: packages/core/src/Core/PluginManager.ts:153
获取插件实例
Parameters
name
string
插件名称
Returns
undefined | IPlugin
插件实例,如果未安装则返回undefined
getMetadata()
getMetadata(
name):undefined|IPluginMetadata
Defined in: packages/core/src/Core/PluginManager.ts:163
获取插件元数据
Parameters
name
string
插件名称
Returns
undefined | IPluginMetadata
插件元数据,如果未安装则返回undefined
getAllPlugins()
getAllPlugins():
IPlugin[]
Defined in: packages/core/src/Core/PluginManager.ts:172
获取所有已安装的插件
Returns
IPlugin[]
插件列表
getAllMetadata()
getAllMetadata():
IPluginMetadata[]
Defined in: packages/core/src/Core/PluginManager.ts:181
获取所有插件元数据
Returns
元数据列表
isInstalled()
isInstalled(
name):boolean
Defined in: packages/core/src/Core/PluginManager.ts:191
检查插件是否已安装
Parameters
name
string
插件名称
Returns
boolean
是否已安装
dispose()
dispose():
void
Defined in: packages/core/src/Core/PluginManager.ts:246
释放资源
Returns
void