非类型化函数调用可能不接受类型参数-角度5 http调用

我正在尝试使用接口从API获取数据。 BELLOW是我的临时界面

export interface ITemp {
    id: number,
    name: string,
    age:  number
}

下面是我的HTTP服务,其中有一个fn getHomeDetails,它调用一个API。

import {Injectable} from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { ITemp } from "../interfaces/temp";
import { Observable } from "rxjs/Observable";
import 'rxjs/Rx';

@Injectable()
export class HttpService{

    http:any;
    baseUrl: String;

    constructor(http:HttpClient){
        this.http = http;
        this.baseUrl = 'some_url';
    }

    getHomeDetails(): Observable<ITemp>  {
        return this.http.get<ITemp>(this.baseUrl); //problem is here 
        //when mouse is pointed on get<ITemp> it shows "Untyped function calls may not accept type arguments"

    }

}

未定义接口。我不知道我做错了什么。并且上述语法是角度4.3X语法。 我使用的编辑器是SUPEME和VISUAL STUDIO。


解决方案

这是因为您为您的类级别http提供了any类型:

http:any;更改为http: HttpClient

一个好的经验法则是,除非确实有必要,否则不要使用any

相关文章