IServiceKey interface
ServiceKey 是调用 ServiceScope.consume () 提取依赖项时使用的查找键。
注解
每个服务密钥还提供依赖项的默认实现,如果未找到依赖项,则会在根范围内自动创建该依赖项。 提供默认实现可确保可以安全地引入新的依赖项,而不会无意中中断由不提供新依赖项的旧主机加载的组件。
属性
default |
构造此服务的默认实例的回调函数。 |
id | 此服务密钥的唯一标识符。 |
name | 服务的名称。 |
属性详细信息
defaultCreator
id
此服务密钥的唯一标识符。
readonly id: string;
属性值
string
注解
此标识符是自动生成的字符串,在页面生存期内是唯一的。 调用方不应对此字符串的格式设置做出假设。 它当前基于全局计数器,但将来可能会更改。
ServiceScope 在内部将此标识符用作查找服务的字典键。 即使同一页上加载了同一库的多个实例,ServiceKey 也是唯一的,即使同一名称已传递到 ServiceKey.create () 也是如此。 这是因为每次调用 ServiceKey.create () 都可能提供不同的 defaultCreator 实现,而 ServiceScope 的设计目标之一是库的加载顺序永远不会影响生成的范围树。
name
服务的名称。
readonly name: string;
属性值
string
注解
此名称仅用于日志记录和诊断目的。 若要使其唯一,建议的约定是包名称,后跟句点,后跟类或接口名称。
系统不假定此字符串是唯一的。 而是在需要查找键的地方使用 ServiceKey.id 。