Home Reference Source
public interface | source

ILifeCircleHook

Direct Implemented:

Indirect Implemented:

  • src/plugins/AopPlugin.js~AopPlugin
  • ,
  • src/plugins/AutoPlugin.js~AutoPlugin
  • ,
  • src/plugins/ImportPlugin.js~ImportPlugin
  • ,
  • src/plugins/ListPlugin.js~ListPlugin
  • ,
  • src/plugins/MapPlugin.js~MapPlugin
  • ,
  • src/plugins/PropertyPlugin.js~PropertyPlugin

ioc 生命周期接口

Member Summary

Public Members
public get

插件名称

Method Summary

Public Methods
public

afterCreateInstance(ioc: IoC, componentId: string, instance: *): Promise<*>

创建组件实例后调用,传入 ioc 容器,当前组件 id,和当前已经创建的实例, 返回一个值为实例的 promise 给 ioc 使用。

public

beforeCreateInstance(ioc: IoC, componentId: string, instance: *): Promise<*>

创建组件实例前调用,传入 ioc 容器,当前组件 id,和当前已经创建的实例(可能没有), 返回一个值为实例的 promise 给 ioc 使用,若不想覆盖现有实例,则直接返回一个 Promise<instance>。

public

onAddComponent(ioc: IoC, componentId: string, componentConfig: ComponentConfig): ComponentConfig

注册组件时调用,传入 ioc 容器,当前组件 id ,可以在此拦截组件级的配置, 返回一个新的组件配置提供给 ioc 使用,ioc 将基于此配置做后续操作。

public

ioc 容器销毁时调用

public

onContainerInit(ioc: IoC, iocConfig: IoCConfig): IoCConfig

容器实例化时调用,传入 ioc 容器和当前配置作为参数, 可以在此拦截容器级的配置, 返回一个新的容器级配置提供给 ioc 使用, ioc将基于新的配置做后续操作。

public

onGetComponent(ioc: IoC, componentId: string, componentConfig: ComponentConfig): ComponentConfig

获取组件时调用,传入 ioc 容器,当前组件 id,可以在此拦截组件级的配置, 返回一个新的组件配置提供给 ioc 使用,ioc 将基于此配置做后续操作。

Public Members

public get name: string source

插件名称

Public Methods

public afterCreateInstance(ioc: IoC, componentId: string, instance: *): Promise<*> source

创建组件实例后调用,传入 ioc 容器,当前组件 id,和当前已经创建的实例, 返回一个值为实例的 promise 给 ioc 使用。

Params:

NameTypeAttributeDescription
ioc IoC

ioc 实例

componentId string

当前组件 id

instance *

当前已创建的实例

Return:

Promise<*>

public beforeCreateInstance(ioc: IoC, componentId: string, instance: *): Promise<*> source

创建组件实例前调用,传入 ioc 容器,当前组件 id,和当前已经创建的实例(可能没有), 返回一个值为实例的 promise 给 ioc 使用,若不想覆盖现有实例,则直接返回一个 Promise<instance>。

Params:

NameTypeAttributeDescription
ioc IoC

ioc 实例

componentId string

当前组件 id

instance *
  • optional

当前已创建的实例

Return:

Promise<*>

public onAddComponent(ioc: IoC, componentId: string, componentConfig: ComponentConfig): ComponentConfig source

注册组件时调用,传入 ioc 容器,当前组件 id ,可以在此拦截组件级的配置, 返回一个新的组件配置提供给 ioc 使用,ioc 将基于此配置做后续操作。

Params:

NameTypeAttributeDescription
ioc IoC

ioc 实例

componentId string

当前待添加的组件 id

componentConfig ComponentConfig

当前待添加的组件配置

Return:

ComponentConfig

扩展后的组件配置

public onContainerDispose(ioc: IoC) source

ioc 容器销毁时调用

Params:

NameTypeAttributeDescription
ioc IoC

ioc 实例

public onContainerInit(ioc: IoC, iocConfig: IoCConfig): IoCConfig source

容器实例化时调用,传入 ioc 容器和当前配置作为参数, 可以在此拦截容器级的配置, 返回一个新的容器级配置提供给 ioc 使用, ioc将基于新的配置做后续操作。

Params:

NameTypeAttributeDescription
ioc IoC

ioc 实例

iocConfig IoCConfig

容器配置

Return:

IoCConfig

扩展后的 ioc 容器配置

public onGetComponent(ioc: IoC, componentId: string, componentConfig: ComponentConfig): ComponentConfig source

获取组件时调用,传入 ioc 容器,当前组件 id,可以在此拦截组件级的配置, 返回一个新的组件配置提供给 ioc 使用,ioc 将基于此配置做后续操作。

Params:

NameTypeAttributeDescription
ioc IoC

ioc 实例

componentId string

当前要获取的组件 id

componentConfig ComponentConfig

当前要获取的组件配置

Return:

ComponentConfig

扩展后的组件配置