Angular 4.4:基于Fetch创建HttpClient的任何方法吗?

时间:2017-10-05 13:28:33

标签: angular httpclient fetch-api angular-http-interceptors

Angular 4.4

我需要在我的服务中使用 fetch api而不是Angular的HttpClient才能在其他项目中使用这些服务(纯javascript类)。

所以我认为这就像扩展一个简单的javascript类一样简单,它使用fetch api并将@Injectable装饰器添加到子类。

以下是服务示例:(在此模块中,我根本不想依赖Angular,因为此模块也可能在React项目中使用)

export class SampleServiceBase {
    constructor() {}

    getCompanies() {
        return fetch('https://example.com/companies');
    }
}

这是该服务的Angular包装器:

@Injectable()
export class SampleService extends SampleServiceBase {
    getCompanies():any {
        return Observable.create(() => fromPromise(super.getCompanies()));
    }
}

但事实证明,我无法从Angular HttpClient的某些功能中受益,例如 HttpInteceptors

所以我的问题是,如果有任何方法可以将获取api包装到Angular中的HttpClient api中吗?

0 个答案:

没有答案