当前位置: 首页 > 面试题库 >

factory、service 和 provider 是什么关系?

徐淳
2023-03-14
本文向大家介绍factory、service 和 provider 是什么关系?相关面试题,主要包含被问及factory、service 和 provider 是什么关系?时的应答技巧和注意事项,需要的朋友参考一下

factory , service , provider都是angular 提供的服务 factory就是原生js里的方法,一个简单的函数 service类似原生里构造函数的过程,拥有一个构造器constructor,也就是说有 new的过程,追加属性和方法都是在this上追加的 provider是服务商当service需要配置的时候,需要使用provider提供服务,例如当使用angular进行跨域访问,需要配置jsonp信息的时候,就可以使用provider进行config的配置,简单理解是service的高级版本,provider提供一个$get的属性来返回 $provider的实例 他们都是html" target="_blank">单例模式,只实例化一次

个人理解 : provider > service > factory factory用来配置简单的服务 service是在factory的基础之上加入了面向对象的思想,提供更多功能的服务 provider是在service的基础上进一步改进配置信息 factory与service在底层代码上都来源于provider

例子介绍: 我可以在factory里写一个http()请求,不做任何配置,参数写死我可以在service里写一个 http( )请求,不做任何配置,参数写死我可以在service里写一个http()请求,不做任何配置,参数写死我可以在service里写一个http( )请求,传入请求的参数可以先配置在this的属性上传入方法 我可以在provider里写一个请求,然后在config上传入要配置的参数,URL, method,data等信息,通过config来修改provider的参数,再将服务商提供的服务注入控制器controller

注意事项: config里传入的参数是nameProvider而不是name,也就是说你的叫做 myProvider, config 里传入的参数就是myProviderProvider而不是myProvider

 类似资料:
  • As noted throughout this documentation, Flarum uses Laravel's service container (or IoC container) for dependency injection. Service Providers allow low-level configuration and modification of the Fla

  • 谁能给我解释一下什么是JAX-RS提供程序,以及'@Provider'注释做什么?我一直在阅读文档,但我没有得到它。 如果有资源类为传入的请求服务,提供者该怎么做?当我创建一个持久资源类(不是每个请求的资源类)时,它们与单例资源类有什么不同?或者这些类也是提供者?

  • 问题内容: 什么是JavaScript中的闭包和回调?我还没有找到很好的解释。 问题答案: 回调 是一个更简单的概念。回调基本上是一个函数接受另一个函数作为参数的地方。在执行过程中的某个时刻,被调用函数将执行作为参数传递的函数,这是一个回调。回调实际上经常是作为异步事件发生的,在这种情况下,被调用的函数可能会在未执行回调的情况下返回,这可能会在以后发生。这是一个常见的示例(基于浏览器): 在这里,

  • 问题内容: 我发现了一个示例,在该示例中,将按钮添加到面板(的实例),然后将面板添加到容器(的实例),然后根据构造将容器包括在(窗口)中。 我尝试了两件事: 我摆脱了容器。在更多详细信息中,我将按钮添加到面板(实例为),然后将面板添加至窗口(实例为)。工作正常。 我摆脱了面板。在更多详细信息中,我直接将按钮添加到了容器,然后将容器添加到了窗口(的实例)。 所以,我不明白两件事。 为什么我们有两种竞

  • 问题内容: 我最近学习了如何在工作流程中使用virtualenv和virtualenvwrapper,但是我在一些指南中看到了pyenv,但是我似乎无法理解pyenv是什么以及它与virtualenv有何不同/相似。pyenv是virtualenv的更好/更新的替代品还是免费的工具?如果后者有什么不同之处,以及两者(以及适用的virtualenvwrapper)如何一起工作? 问题答案: Pyen

  • 本文向大家介绍NodeJs和V8引擎是什么关系?相关面试题,主要包含被问及NodeJs和V8引擎是什么关系?时的应答技巧和注意事项,需要的朋友参考一下 v8 是 Google 开源的 JavaScript 与 WebAssembly 引擎,用于 Google Chrome 与 NodeJS。 https://v8.dev/