问题标签 [angular-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.

0 投票
1 回答
30 浏览

angular - 将提供者添加到提供者数组不起作用

我想根据某些条件将提供者添加到我的提供者数组中。这种方式添加是行不通的

以上不起作用。将新提供者推送到提供者数组的正确方法是什么。

0 投票
0 回答
74 浏览

angular - 角度模块中的条件提供程序引发 AOT 错误

仅当浏览器是 IE 时,我才想将提供程序推送到我的提供程序列表中。

我试过了

上面的代码抛出 AOT 错误,说装饰器中不允许使用符号。我也试过如下

在上述情况下,提供者永远不会被推送或永远不会被激活。我该如何解决这个问题?

0 投票
1 回答
135 浏览

angular - 提供者无法解析构造函数参数中的其他提供者

我正在开发一个 ionic v3 应用程序:我声明了我的所有提供者,但其中一个无法在另外两个提供者中解决

我收到了这个错误:

这是我的“未解决”提供商:

这是一个无法解决的问题:

我试着理解出了什么问题。我将所有提供者放在 app.module.ts 中的提供者声明中。

有人知道我做错了什么吗?

0 投票
1 回答
3745 浏览

angular - @Injectable(providedIn: 'root') 的语义?

只是想确保我理解@Injectable(providedIn: 'root'). 在 Angular 6 之前,如果我们从 NPM 导入一个包含服务的模块,我们将在我们的应用程序模块中声明该模块,以便整个应用程序都可以访问该服务。像这样的东西:

现在我们可以注入SomeService模块提供的,因为我们已经导入了模块。SomeNPModule在Angular 6 中,不需要导入),AppModule因为我们@Injectable(providedIn: 'root在服务本身上使用 ),并且当注解运行时,它会自动使服务在root注入容器中可用?

更新

所以我们有了答案,但我认为它是部分完成的,如果我们想要配置服务,这通常是通过forRoot服务模块上的方法完成的......就像通过Router. 所以假设我们不想配置服务,我们需要做的就是注入它,但是如果我们想要一个配置的服务,我们需要遵循Router模式。如果我在评论中犯了任何错误,请纠正我。

0 投票
1 回答
207 浏览

angular - 我添加 { 提供:HTTP_INTERCEPTOR .....} 时的 NativeScript exaption

大家好 ! 这就是我正在做的事情:

https://github.com/jonny720/do-here-client/blob/master/do-here/app/%40shared/services/aute.interceptor.ts

我在使用 HTTP_INTERCEPTOR 时遇到问题,我想构建拦截器,该拦截器将为我的应用程序中的每个 http 请求添加标头。

但是当我在 app.module.ts 添加这一行时,应用程序不会启动。

提供者:[{提供:HTTP_INTERCEPTORS,useClass:AuthInterceptor,multi:true}]

你认为可能是什么问题?谢谢你 :)

auth.interceptor.ts :

app.module.ts :

0 投票
2 回答
1800 浏览

angular - 如何使用给定的注入令牌将依赖项注入提供程序?

我正在使用一个 Angular 插件,需要通过使用InjectionToken插件导出的配置对象来配置它。

我遇到的问题是,这valueString是来自其他供应商的价值。我不知道如何将依赖项注入@NgModule装饰器的提供者。怎么做?

0 投票
0 回答
408 浏览

angular - Angular 静态提供程序引导程序不会覆盖应用程序根提供程序

使用 Angular 6.0.3

将第三方 Azure Adal 包装器导入根应用程序模块:

【第三方模块定义】

传递给的配置forRoot用作useValue提供者的参数。以为我可以在模块引导期间覆盖提供的对象:

然而,静态提供者必须在 Angular 中解析提供者的起泡顺序中更早,因为提供的对象始终是在应用程序级别的 NgModule 装饰器中传递的一个派生配置对象(即在静态forRoot调用中使用的那个)。

尝试分叉 3rd 方库,将multi添加到提供指令并让依赖项吞下一个数组。但这似乎也不起作用。引导时来自静态提供程序的提供指令被完全忽略(即从未添加到多数组中)。

有任何想法吗?

0 投票
2 回答
1444 浏览

angular - 在 main.ts 和 app.module 中使用相同的服务实例化(到处都是单例)

我在“root”中提供了一个名为“LocaleService”的服务,其中包含我所有的语言环境逻辑。

该服务初始化应用程序的本地化并提供一些关于语言环境的功能。

我必须在 main.ts 中初始化此服务以使角度语言环境正常工作

这是我的初始化:

问题是,在我的一个组件中使用该服务时,该服务第二次被实例化,如下所示:

我希望我的引导提供程序在任何地方都携带相同的实例,但事实并非如此。

有没有办法在我的所有应用程序中携带我在 main.ts 中创建的相同实例?

这是我的服务:

0 投票
1 回答
592 浏览

api - 如何与 Ionic 中提供的 API 进行匹配和验证?

我已经相应地创建了登录功能,但登录功能不起作用。每当我输入示例输入(电话号码和密码)时,它并没有将我引导到主页。下图中提供了有关 API 的详细信息。有什么我错过的吗?请帮我解决这个问题。

API详细信息: 在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

HTML 代码:

.TS 代码:

供应商代码:

api-service.service.ts

身份验证服务.service.ts

0 投票
1 回答
600 浏览

angular - 由于常量提供程序,无法解析所有参数 angular

我遇到了一个奇怪的问题。我有一个名为ConstantsProvider的提供程序。我在几个页面中使用它。我创建了一个新页面并在导入后添加常量作为依赖项。

并在我的页面中添加为依赖项

我这样做的方式可能是 20 多页。在如上所述的页面中声明时,我收到错误

compiler.js:486 Uncaught Error: Can't resolve all parameters for ASpaceBookingsPage: ([object Object], [object Object], ?)。

关闭并运行(ionic serve)后,重新启动升级 ionic仍然遇到同样的问题。我已经在 app.module.ts 中添加了它,并且 ConstantsProvider 也有 @Injectable 装饰器。

如果它有任何类型的语法错误,它不应该在所有页面中工作。如果删除这个新页面中的依赖关系一切正常。有人可以帮我吗??因为这是一个非常大的项目,我可以共享代码或尝试在外面复制。