gpt4 book ai didi

angular - 在 Angular 2 中使用 OpaqueToken

转载 作者:太空狗 更新时间:2023-10-29 19:29:38 26 4
gpt4 key购买 nike

我在我的示例 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/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com