gpt4 book ai didi

javascript - AngularJS - 是依赖注入(inject)还是多重继承?

转载 作者:行者123 更新时间:2023-11-30 08:46:22 25 4
gpt4 key购买 nike

大部分documentation我已阅读有关 AngularJS 的内容谈论依赖注入(inject)。

当定义一个 Controller 时,您可以注入(inject)其他类到其中,使调用类可以访问它们的操作/属性。

因此,我已经说过,定义了一个 contentTypeFactory,然后我将其注入(inject)contentTypeController 中,因此我获得了所有好处工厂并可以调用其中的属性和方法。

即:app.controller('contentTypeController', ['$scope', '$log', 'contentTypeFactory', ...

从面向对象的 Angular 来看,这看起来很像多重继承,而不是依赖注入(inject)。

有人可以澄清一下吗?

最佳答案

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

JavaScript 支持原型(prototype)继承,这不是多重继承。

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

在您的特定场景中,您的 Controller “有一个”contentTypeFactory。它不是 contentTypeFactory。您的 Controller 将工作委托(delegate)给它。

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

关于javascript - AngularJS - 是依赖注入(inject)还是多重继承?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21706783/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com