IServiceKey interface

ServiceKey 是调用 ServiceScope.consume () 提取依赖项时使用的查找键。

注解

每个服务密钥还提供依赖项的默认实现,如果未找到依赖项,则会在根范围内自动创建该依赖项。 提供默认实现可确保可以安全地引入新的依赖项,而不会无意中中断由不提供新依赖项的旧主机加载的组件。

属性

defaultCreator

构造此服务的默认实例的回调函数。

id

此服务密钥的唯一标识符。

name

服务的名称。

属性详细信息

defaultCreator

构造此服务的默认实例的回调函数。

readonly defaultCreator: ServiceCreator<T>;

属性值

id

此服务密钥的唯一标识符。

readonly id: string;

属性值

string

注解

此标识符是自动生成的字符串,在页面生存期内是唯一的。 调用方不应对此字符串的格式设置做出假设。 它当前基于全局计数器,但将来可能会更改。

ServiceScope 在内部将此标识符用作查找服务的字典键。 即使同一页上加载了同一库的多个实例,ServiceKey 也是唯一的,即使同一名称已传递到 ServiceKey.create () 也是如此。 这是因为每次调用 ServiceKey.create () 都可能提供不同的 defaultCreator 实现,而 ServiceScope 的设计目标之一是库的加载顺序永远不会影响生成的范围树。

name

服务的名称。

readonly name: string;

属性值

string

注解

此名称仅用于日志记录和诊断目的。 若要使其唯一,建议的约定是包名称,后跟句点,后跟类或接口名称。

系统不假定此字符串是唯一的。 而是在需要查找键的地方使用 ServiceKey.id