我已将InjectionToken
提供给第三方库(@living/cest
):BASE_PATH
。
我只想将它用于在控制台上打印出来。
我已将提供者声明为:
import { BASE_PATH } from '@living/cest';
PROVIDERS = [
{ provide: BASE_PATH, useValue: 'http://guest1:8080/commty/cmng' }
];
所以,进入我的AppModule
:
@NgModule({
bootstrap: [ App ],
declarations: [ App, ...],
imports: [...],
providers: [
PROVIDERS
]
})
export class AppModule {...}
进入我的App
组件:
import { BASE_PATH } from '@living/cest';
@Component({...})
export class App {
constructor(@Optional()@Inject(BASE_PATH) private basePath: string) {
console.info("BASEPATH: " + basePath);
}
}
但是,控制台输出是:
BASEPATH:null
修改
我正在使用environment.ts
文件来设置PROVIDERS
数组:
所以,我在app.module.ts
上导入它:
import { ENV_PROVIDERS } from './environment';
我直截了当地使用它:
providers: [
...PROVIDERS
]