首页 > 解决方案 > 导入特征效果时全局注入器出现问题 [Angular 9]

问题描述

将效果导入功能模块时遇到问题。 无法读取全局注入器中出现未定义错误的属性“获取”。

以下是我为基础服务所做的事情。

`

import { Injectable } from "@angular/core";
import { AppInjector } from "@app/app-injector.service";
import { StorageService } from "../storage";

@Injectable({
  providedIn: "root",
})
export class BaseService {
  protected storage: StorageService;
  protected http: HttpClient;

  constructor() {
    this.storage = AppInjector.injector.get(StorageService);
    this.http = AppInjector.injector.get(HttpClient);
  }
}

`

标签: angularinheritancengrxngrx-effects

解决方案


您需要为此使用适当的 DI。

import { Injectable } from "@angular/core";
import { AppInjector } from "@app/app-injector.service";
import { StorageService } from "../storage";

@Injectable({
  providedIn: "root",
})
export class BaseService {
  protected storage: StorageService;
  protected http: HttpClient;

  constructor(appInjector: AppInjector) {
    this.storage = appInjector.injector.get(StorageService);
    this.http = appInjector.injector.get(HttpClient);
  }
}

推荐阅读