Angular:如何在Module中声明变量并从所有组件访问它?

问题描述 投票:3回答:1

我想在app.module中声明变量并从子组件访问它 没有再次声明它或使用全局注入。

这可能吗?

angular
1个回答
3
投票

您可以定义String Token并通过Injector@angular/core将其注入您的组件。

App.module.ts

const testVar = 'some value';
@NgModule({
  ...
  providers: [
    { provide: 'A', useValue: testVar}   // define a string token
  ]
})
export class AppModule { }

零件

import { Injector } from '@angular/core';

constructor(private injector: Injector) {
  const A = this.injector.get('A');
  console.log(A);
}

DEMO

© www.soinside.com 2019 - 2024. All rights reserved.