Angular通過依賴注入機制注入一個對象的例子

假設我在app.config.ts裏定義了一個interface AppConfig和一個對象HERO_DI_CONFIG, 我想將後者注入到一個類的構造函數裏去:

export interface AppConfig {
    apiEndpoint: string;
    title: string;
  }

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

export const APP_CONFIG = new InjectionToken<AppConfig>('app.config');

export const HERO_DI_CONFIG: AppConfig = {
  apiEndpoint: 'api.heroes.com',
  title: 'Dependency Injection'
};

使用InjectionToken新建一個token,類型參數爲AppConfig,單引號裏的app.config是injection token的描述信息。

在NgModule裏使用useValue注入:

在需要使用這個依賴的地方,將token APP_CONFIG傳入@Inject:

最後的效果:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章