- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我在我的示例 Angular 2 应用程序中使用了 OpaqueToken,下面是相关代码
//app.module.ts
......
....
export const MY_CONFIG_TOKEN = new OpaqueToken('MY_CONFIG_TOKEN');
providers: [
{ provide: MY_CONFIG_TOKEN, useValue: {test:'test'} }
]
....
.....
下面是我相关的根组件代码,我在其中使用 token 进行依赖注入(inject)
....
....
constructor(@Inject(MY_CONFIG_TOKEN) private myconfig:any,){}
在浏览器中运行此应用程序会抛出以下错误
Can't resolve all parameters for AppComponent
知道这个错误的原因是什么。如果需要提供更多信息,请告诉我。
最佳答案
这是一个有效的插件 https://plnkr.co/edit/pDNFSP?p=preview显示如何使用 OpaqueToken。以下是定义 OpaqueToken 的方式:
import { OpaqueToken } from '@angular/core';
export let MY_CONFIG_TOKEN = new OpaqueToken('configToken');
然后将它导入到主模块中:
import { MY_CONFIG_TOKEN } from './token';
然后在providers下注册
providers: [{provide: MY_CONFIG_TOKEN, useValue: {test:'test'} }],
最后你可以像这样使用它:
constructor(@Inject(MY_CONFIG_TOKEN) private myconfig:any) {
myconfig.value = "Hello";
console.log(myconfig.value);
}
在 App 组件中,我将一个虚拟的“值”属性附加到 token ,并在构造函数中设置它后将其显示在控制台中。
希望这对您有所帮助。
关于angular - 在 Angular 2 中使用 OpaqueToken,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42883540/
在提供 OpaqueToken 方面需要一些帮助。使用 Angular 2 beta-12。如果 provider key 是一个字符串,它工作正常,但在使用 OpaqueToken 时不起作用。在
我在我的示例 Angular 2 应用程序中使用了 OpaqueToken,下面是相关代码 //app.module.ts ...... .... export const MY_CONFIG_TOK
InjectionToken 在 Angular 4 中引入,OpaqueToken 被标记为已弃用。 According to the manual , 它应该用作 const anyToken =
在构建刚刚从 Angular 创建的全新项目时收到此错误消息: ERROR in node_modules/@ngrx/store/src/ng2.d.ts(1,10): error TS2305:
我在 Angular2 中使用 jQuery 时遇到了困难。它不想弹出我的模式。 错误消息: 使用Angular-cli npm install,然后使用yarn来安装bootstrap + 在我的
我有一个 Angular 4 应用程序,我正在将其升级到 Angular 5。 我收到以下错误。 ERROR in src/app/application/services/generated/var
我正在关注依赖注入(inject)的 Angular 文档,并尝试复制关于 dependency injection tokens 的部分. 在单独的 JS 模块中定义 OpaqueToken //
我一直在关注文档 here并使用 ng-cli。 我创建了以下配置文件 (app-config.ts): import { OpaqueToken } from '@angular/core'; ex
node_modules/@ionic/cloud-angular/dist/es5/index.d.ts Typescript ErrorModule '"/home/ritzylab/ionic-
我是一名优秀的程序员,十分优秀!