Angular Js依赖注入

时间:2015-03-13 15:31:29

标签: angularjs dependency-injection

您好我对AngularJS依赖注入有很大疑问。我的问题是

在加载索引页面时,我正在引用我在我的应用程序中使用的所有js。那么Angular中的依赖注入真的有用吗?

我的意思是一般来说,一旦加载了JS,我们可以使用它为什么要进行这种依赖注入

如果JS由于这种依赖注入而动态加载会很好但是它不是那样的,那么依赖注入的实际用途是什么

2 个答案:

答案 0 :(得分:1)

我猜你在作为js库的依赖项和依赖项注入之间感到困惑。

当您将库添加到主HTML文件时,实际上包含了要使用的代码,但这并不意味着您实际上是在对代码注入依赖。

使用DI的结果之一是使您的代码可测试并将您的实现与其依赖项分离并且更加TDD

例如,如果在控制器中注入依赖项,则可以稍后使用模拟对象替换该依赖项,并测试控制器的功能而不是服务本身。

来自角度文档的

  

依赖注入(DI)是一种处理的软件设计模式   组件如何获取其依赖项。   Angular进样器子系统负责创建组件,   解决它们的依赖关系并将它们提供给其他组件   按要求。

总而言之,有两种不同类型的依赖库需要引用它们才能使“代码可用”并且代码中的依赖项将更容易维护和解耦依赖项。

答案 1 :(得分:0)

我可以尝试重新发明轮子或写一个真正好听的故事..但我认为AngularJS背后的团队在解释DI的含义/用法方面做得很好

Dependency Injection Documentation

滚动到页面底部,有一个很好的解释如何以及为什么。