Angular学习记录5:Dependency Injection

这篇博客介绍了Angular中的依赖注入,解释了依赖注入的原因、场景,并详细阐述了Angular如何实现依赖注入,包括使用ReflectiveInjector创建服务、在NgModule中注册服务以及工厂模式注入。还通过实例展示了在构造函数中注入参数的需求及其解决方法。
摘要由CSDN通过智能技术生成

0 什么是依赖

如果在class A中使用了class B,就说A依赖B。

 

1 为什么要依赖注入

类与类之间的紧耦合不利于测试、debug等。

 

2 什么时候需要依赖注入

2.1 Singleton

当整个应用需要共享一个单例

2.2 environment-specific variables

需要配置对整个环境都起作用的常量(类似全局变量)

2.3 Call any function and inject the return value of that function

 

3 Angular怎么依赖注入

3.1 涉及的概念

provider

injector

dependency

3.2 具体的流程

3.2.1 使用 ReflectiveInjector.resolveAndCreate([serviceName...])

例如需要创建单例时,我们可以把单例提供的功能放到单独的service文件夹下,然后用@injectable修饰。在需要用这个服务的类中,使用ReflectiveInjector.resolveAndCreate([serviceName...])获得injector,再通过injector.get(serviceName)来获取这个服务。

3.2.2 更方便的做法

也是Angular中的常见做法。在@N

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值