AngularJS - 它是依赖注入还是多重继承?

时间:2014-02-11 16:00:27

标签: javascript angularjs oop dependency-injection

关于documentation关于依赖注入的讨论,我已阅读过大多数AngularJS

定义控制器时,可以注入其他类,使其操作/属性可以从调用类访问。

所以,我说,contentTypeFactory已定义,我注入<{1}},从而获得了工厂的所有好处,并且可以调用属性和其中的方法。

ie:contentTypeController

从OO的角度来看,这看起来很像多重继承,而不是依赖注入。

有人可以澄清一下吗?

1 个答案:

答案 0 :(得分:5)

我认为简单的答案是你描述的不是多重继承。

JavaScript支持原型继承,而不是多重继承。

当你使用依赖注入时,你更喜欢组合而不是继承。依赖关系是“HAS A”关系。这不是“IS A”关系。

在您的特定场景中,您的控制器“有一个”contentTypeFactory。它不是contentTypeFactory。您的控制器委托工作。

我希望这能回答你的问题。