GET调用中的类型响应

时间:2018-02-02 14:53:12

标签: angular typescript

我正在尝试在一个简单的GET中实现类型化响应,但是我从编译器中得到了这种奇怪的行为:应用程序已经编译但是它返回一个红色错误,你可以在从VS代码中获取的图像中看到:

src / app / services / product.service.ts(49,5)中的错误:错误TS2558:预期的0类型参数,但得到1。

enter image description here

这是代码:

的src / app.component.ts

import { Component } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { Device } from './model/device';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  devices: Device[];

  constructor(private http: HttpClient) {
    this.getAll();
  }

  getAll() {
    this.http.get<Device[]>('http://localhost:3000/devices')
      .subscribe(result => this.devices = result);
  }
}

接口

export interface Device {
  id?: number;
  label?: string;
  os?: string;
  price?: number;
  memory?: number;
  rate?: number;
  desc?: string;
}

为什么我会收到错误?

感谢支持

1 个答案:

答案 0 :(得分:0)

我认为你使用的是v4.3之前的Angular版本 HttpClient在4.3中可用,允许键入get。在此之前,你无法提供类型。