ahmed_sa Ответов: 1

Функция getemployeelist генерирует ошибку при отображении списка сотрудников


проблема
получить ошибку при создании Службы getallemployee

Conversion of type 'Promise<any>' to type 'Employee[]' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first.ts(2352)
Conversion of type 'Promise<any>' to type 'Employee[]' may be a mistake because neither type sufficiently overlaps with the other. If th


ошибка выполнена в функции getemployeelist
как решить эту проблему, пожалуйста?

Что я уже пробовал:

export class Employee {
    EmployeeId : number;
    BranchCode:number;
    EmployeeName:string;
    EmployeeAge:number;
    JoinDate:Date;
    BirthDate:Date;
    Active : boolean;
}

import { Injectable } from '@angular/core'
import { HttpClient } from '@angular/common/http'
import {Employee} from'./employee.model'
import { Observable } from 'rxjs'
import 'rxjs/add/operator/map'
import 'rxjs/add/operator/toPromise'
import 'rxjs/add/observable/fromPromise'
import { map } from 'rxjs/operators'

@Injectable()
export class ApiService{
    employeeList : Employee[];
    constructor(private http : HttpClient){}

       
   
        
        getEmployeeList(): Observable<Employee[]> {
          return this.http
              .get('https://localhost:44326/api/Employee')
              .map((response: Response) => {
                  return <Employee[]>response.json();
              })
              .catch(this.handleError);
      }

}

Bryian Tan

попробовать .карта(ответ => В ответ.в JSON())

ahmed_sa

и нет необходимости использовать массив

ahmed_sa

или что

1 Ответов

Рейтинг:
0

Bohdan Stupak

Эта ошибка является довольно информативным. this.http.get возвращается Promise которые вы безуспешно пытаетесь преобразовать в свои сущности.
Воспользуйся

this.http
.get('https://localhost:44326/api/Employee')
.then(res => //your logic)