问题标签 [angular2-providers]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angular - 例外:没有标头提供者!(应用程序 -> Api -> 标头)
只是无法弄清楚为什么我仍然会遇到这个缺少的 Headers 提供程序问题。
我的 bootstrap.ts:
我的 app.ts
我的 api.ts 服务:
完整错误:
javascript - 如何在angular2中全局导入Javascript库
我正在尝试在 angular2 中导入 moment.js 库。我发现以下解决方案为:
但是,我不想将它导入到我拥有的每个组件中。有没有办法在全局范围内注入它,以便我可以在所有组件中使用它?
angular - Angular 2 angular2.dev.js:23925 例外:错误:未捕获(承诺):没有提供者
我正在尝试将具有配置文件 (datService.configuration) 的 Angular 服务 (DataService) 加载到组件 (Home) 中。在我的 Home 组件中,如果我不将 DataServiceConfiguration 添加到提供程序列表中,我会收到以下错误:
“未捕获(承诺):DataServiceConfiguration 没有提供者!(Home -> DataService -> DataServiceConfiguration)”
数据服务.ts:
dataService.configuration.ts:
主页.ts
我不明白为什么需要将 DataServiceConfiguration 添加到我的 Home 组件中,因为我的 DataService 已经加载了它。有没有办法只将 DataService 添加到我的组件中?
angular - Angular2 中的提供者是什么?
在 Angular2 组件配置providers
中是我们可以指定的键之一。这些提供者是如何定义的,它们的用途是什么?
注意:
Angular2 文档正在逐渐成熟,但仍然很少。它目前将提供者定义为:
组件所需服务的一组依赖注入提供程序。
这个递归定义不是很有帮助。通过示例进行更详细的解释确实会有所帮助。
angular - 没有服务提供商
我正在尝试使用 2.0.0-beta.17 进入 angular2。我想从服务中读取数据,但无论我做什么,我都会遇到异常:
我在这里经历了几十个相同的问题,但没有一个有效。
这是我的服务类:
Language 是一个简单的 typescript 类,它应该最终从 web 服务调用中检索到,但我并没有那么远。
LanguageService 由 LanguageBrowser 组件使用
LanguageCollection 是另一个组件,它采用语言列表并在选择列表中的一种语言时发出事件。LanguageDetail 仅显示所选语言。它们都无关紧要(我假设),所以我将在这里排除它们。
正如另一个答案所建议的那样,我添加了 system-polyfills.js 和 es6-shim.js 作为脚本包含但无济于事。这是我布局的相关部分:
引导看起来像这样:
和 AppComponent 是这样的:
我的 package.json 中的依赖项:
正如 npm 安装告诉我 angular2 需要反射元数据和 rxjs 的 peerDependencies 我只是将它们包含为 peerDependencies。我也将它们作为常规依赖项,没有任何变化。
显然我错过了一些东西,但我无法找出它可能是什么。浏览了 angular2 的几个教程,但没有一个能成功。
javascript - 如何将提供程序添加到 Angular 2 中的服务类?
我有一个使用服务的组件。该组件看起来像这样:
如您所见,我HTTP_PROVIDERS
在组件中添加了提供程序。这很有效,因为 DI 现在知道这些http
类了。但是,TestService
真正使用Http
课程的是我的,而不是我的TestComponent
.
我觉得既然是使用Http
类的服务,它应该是包含提供者本身的服务。他们TestComponent
不知道供应商TestService
需要什么。
由于服务类没有那个组件装饰器,我不确定如何实际向它添加提供程序。如何将提供者添加到Service
课程中?
angular - Angular2 - 提供者列表作为常量不起作用
我正在尝试为XHRBackend
该类创建一个包装器,并且我已经能够在最外层成功地创建和使用所有提供的服务,AppComponent
但我无法将提供程序打包到实际服务本身中。我将类注入到组件构造函数中,但我无法想象这会破坏任何东西。
当前AppComponent
代码:
所需AppComponent
代码:
从后端包装器中导出的所需常量:
当我尝试这样做时One or more of providers for "AppComponent" were not defined
,我的控制台中出现一个错误,因为XHRBackendWrapper
找不到。我在这里想念什么?
我不能发布所有代码,因为它会使这个问题太大,但是,如果它有帮助,这是 XHRBackendWrapper 的一般想法:
angular - 没有 HttpService 的提供者
当我运行以下项目时,出现错误:
没有 HttpService 的提供者!(AppComponent -> HttpService)
有人能帮助我吗?
我的应用组件:
服务:
和 boot.ts:
问题出在哪里?
angular - 在 Ionic 2 应用程序中使用自定义 Http 服务
我对 Ionic 2 应用程序 (v2.0.0-beta.30) 中的每个 HTTP 请求都有一些我想做的事情,所以我创建了自己的 Http 类来扩展 angular 的服务。像这样的东西:
我有东西当前正在调用函数Http
,我不想更改所有要调用的东西MyHttp
。我希望任何发出请求的东西都不知道也不关心它实际上是在调用MyHttp
. 似乎应该有一种方法可以提供MyHttp
而不是Http
,我只是不确定您将在哪里使用 Ionic 2 应用程序来执行此操作。
我尝试添加这样的ionicBootstrap
功能:
这只是给了我死亡的白屏。我还尝试像这样添加到类的@Component
装饰器中MyApp
:
这给出了相同的白屏。我不确定我是否理解差异,因为我尝试过toAlias
而不是toClass
得到相同的结果。
MyHttp
当有任何东西要注射时,我如何告诉注射器注射Http
?
- - - - 更新 - - - - - -
我终于通过我的尝试绕过了死亡的白屏,也包括HTTP_PROVIDERS
在提供者的数组中。但是,它仍然是注入Http
而不是MyHttp
在使用它的其他服务中。我已经尝试了以下各项:
所依赖的服务Http
如下所示:
我在这里放了一个调试器,我可以看到它是 angular'sHttp
而不是MyHttp
.
-------- 更新 2 ------------
我尝试用不同的班级做同样的事情,我确实看到它有效。例如:
我看到MyOtherClass2
它要求时被注射MyOtherClass
。所以,我不知道我是否做错了什么,MyHttp
或者Http
. 有没有人能够成功地做到这一点Http
?