【Angular】——依赖注入

       依赖注入要解决的问题,就是当一个对象B要依赖对象A这样的一个对象的时候,对象A不需要去实例化,对象A只需要用某种机制注入进来。声明自己需要一个A类型的对象,有人可以给一个吗?

       控制反转:侧重于描述目的。依赖的控制权从代码的内部反转到代码的外部。

       依赖注入:侧重于描述手段,如何实现控制反转。使用的手段叫做依赖注入。(例如下:)

 

Var  product=new Product();

createXiangzao(product);


     Angule实现控制反转的手段就是依赖注入,实现了控制反转的框架被称为IOC容器。Angular就是一个IOC容器

好处:

1、松耦合、可重用

@ngModule({
providers:[ProductService] //是一个数组,声明了那个对象需要注入
// providers:[{provide:ProductService,useClass:ProductService}] 与上面是相等的意思。
})

@Component({
    省略组件配置
})
export class ProductComponent{
product:Product;
constructor(productService:ProductService){
this.product=productService.getProduct();
}
}

2、可测试性:如果登陆依赖的组件没有开发好,而自己登陆组件已经开发完毕,可以先建立测试的。之后使用依赖注入改成真正开发的组件。提高了可测试性,避免因为此类事情影响开发进度。



评论 20
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值