在AngularJS中,服务、工厂和提供者的执行顺序是什么?

3
AngularJS框架是否按照预定义的顺序执行上述所有操作,还是由程序员完成?

我猜测这是一种基于所请求模块的依赖关系的任意拓扑排序。 - Jesus is Lord
请查看此答案是否有帮助:"angularJS $on事件处理程序触发顺序" - Stewie
2个回答

4

在配置阶段创建提供者和常量,而在配置阶段之后创建工厂、服务和值(因此无法将它们注入到配置中)。

据我所知,没有其他细微差别(这意味着您可以假设所有服务(我指任何类型的提供者)都可以供您使用)。


3

术语上,工厂可以生成服务,提供者向请求它们的组件提供服务。如果您的某些服务依赖于其他服务,则应该有一些替代执行服务和提供者的方法。确保所有这些事情以正确的顺序发生,以允许实例化所有服务是Angular依赖注入的工作。

一个需要问的问题是,为什么您关心工厂函数运行的顺序?如果您正确声明依赖项并且您的服务适当地解耦,Angular应该为您处理这些事情。您可能遇到的唯一奇特情况是循环依赖关系,您可以在这里看到一些讨论。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接