Angular:注入不透明的标记

时间:2017-11-19 11:12:26

标签: angular angular2-opaquetoken

我试着理解如何注入不透明的令牌。

例如,我有一些服务MyService,我为它创建了一个不透明的标记:

import {OpaqueToken} from '@angular/core'; 
...
const serviceToken = new OpaqueToken('MyService');
...
providers: [
    {
        provide: serviceToken,
        useValue: 'Service value!'
    }
]

没关系。但是我如何将这项服务注入我的组件?

我试图在我的组件中创建一个不透明令牌的相同实例并注入它但是我收到一个错误:错误:没有Token MyService的提供者!

请您查看示例:Plunker

1 个答案:

答案 0 :(得分:-1)

结论:我们可以在组件中使用相同的不透明令牌实例。只需从模块中导出它并在组件中使用。