导入InjectionToken:

import {InjectionToken} from '@angular/core';

调用从@Angular/core导入的构造器,创建一个新的实例:

export const TOKEN_HOST_CLASS_PROVIDER = new InjectionToken<HostTokenComponentService>('TOKEN_HOST_CLASS_PROVIDER');

Injection构造器的实现:

export declare class InjectionToken<T> {protected _desc: string;readonly ɵprov: never | undefined;constructor(_desc: string, options?: {providedIn?: Type<any> | 'root' | 'platform' | 'any' | null;factory: () => T;});toString(): string;
}

Component构造器里的定义:

providers: [HostComponentService,{provide: TOKEN_HOST_CLASS_PROVIDER, useClass: HostTokenComponentService}]

在Component 构造函数里进行注入:

export class HostDecoratorComponent {constructor(private hostComponentService: HostComponentService, @Inject(TOKEN_HOST_CLASS_PROVIDER) h){console.log('in HostDecoratorComponent, Host component service got from own Injector: ', hostComponentService, ' HostTokenComponentService: ', h);h.print();}

最后运行结果:

调用InjectionToken构造器,options的值为undefined:

更多Jerry的原创文章,尽在:“汪子熙”:

Angular InjectionToken的一个具体使用例子相关推荐

  1. Angular 原理图 Schematics 学习 - 动手开发一个实际的例子

    当 ng add 命令向项目中添加某个库时,就会运行原理图.ng generate 命令则会运行原理图,来创建应用.库和 Angular 代码块. 一些术语: 规则 在原理图 中,是指一个在文件树上运 ...

  2. Angular component的一个例子

    官网:https://angular.io/guide/architecture-components Before a view is displayed, Angular evaluates th ...

  3. 一个简单的例子学会github repository的webhook

    2019独角兽企业重金招聘Python工程师标准>>> github的webhook是个有用的功能,允许开发人员指定一个服务器的url.当开发者对github仓库施加操作,比如提交代 ...

  4. .net中的对象序列化(1): 序列化是什么, 以及一个简单的例子

    1. 为什么需要序列化,什么是序列化 对于一个程序来说, 使用到的对象都是存在于内存中的.如果想保存这些对象的运行时状态, 或者需要在不同进程或者网络间传递对象,就需要序列化. 序列化就是讲运行中的对 ...

  5. 一个具体的例子学习Java volatile关键字

    相信大多数Java程序员都学习过volatile这个关键字的用法.百度百科上对volatile的定义: volatile是一个类型修饰符(type specifier),被设计用来修饰被不同线程访问和 ...

  6. 一个简单的例子看java线程机制

    一个简单的例子看java线程机制 作者: zyf0808 发表日期: 2006-03-26 11:20 文章属性: 原创 复制链接 import java.util.*; public class T ...

  7. Cassandra使用 —— 一个气象站的例子

    使用场景: Cassandra非常适合存储时序类型的数据,本文我们使用一个气象站的例子(该气象站每分钟需要存储一条温度数据). 一.方案1:每个设备占用一行 这个方案的思路就是给每个数据源创建一行,比 ...

  8. blockchain 区块链200行代码:在JavaScript实现的一个简单的例子

    blockchain 区块链200行代码:在JavaScript实现的一个简单的例子 了解blockchain的概念很简单(区块链,交易链块):它是分布式的(即不是放置在同一台机器上,不同的网络设备上 ...

  9. 多态性与虚拟函数一个典型的例子第一步

    **#include <iostream> #include <strings.h> #include <cstring>using namespace std; ...

最新文章

  1. RDKit toolkit实战三:描述符计算及可视化
  2. 外部链接linux下的mysql,Linux下mysql实现远程链接
  3. 【Tomcat】Tomcat性能分析
  4. react使用setSetat设置多级对象的值
  5. 【MATLAB】 csvwrite数据缺失怎么办
  6. css hack惯用手法
  7. 基于 OpenCV 的图像阴影去除,你会吗?
  8. SLF4J错误:NoSuchMethodError解决方案
  9. 开课吧Java课堂:什么是ArrayList类
  10. 129.求根到叶子节点数字之和
  11. pass 软件_杀毒软件哪家强?今天来聊聊关于保护你电脑的杀毒软件那些事!
  12. spring-boot-route(十九)spring-boot-admin监控服务
  13. 计算机应用技术专业的周志,计算机科学与技术专业实习周记
  14. 传感器学习——TB6612
  15. js获取汉字拼音首字母
  16. 史上最全程序员视频+电子书资源分享
  17. Python绘制股票趋势图
  18. 命名实体识别学习记录(spaCy/OpenNLP..)
  19. 【已解决】iphone和mac的备忘录、提醒事项、日历等无法同步。MacBook点击“更新Apple ID 设置”无反应。
  20. 测试攻击机伪装成目标机 IP 给目标机发送攻击报文是否成功

热门文章

  1. 实战:微信小程序支付开发具体流程
  2. addroid 自定义布局
  3. mysql数据结构优化,范式和反范式
  4. 有关交换机——熟悉原理是必须的【转载】
  5. Kickstart+NFS+DHCP+TFTP+PXElinux实现CentOS的网络自动安装
  6. 设计模式之 中介者模式
  7. springboot主要注解及其作用
  8. 乙级(Basic Level) 1009 数字黑洞
  9. MySQL数据库篇之初识数据库
  10. python 关于字节串和字符串