Тип: Свойство не существует на модели в карте RXJS 6 с угловым 6 - PullRequest
0 голосов
/ 20 сентября 2018

У меня есть вызов службы, я получаю сервис и получаю результат. При запуске приложения с типом я получаю ошибку ниже.

Ошибка - свойство ProductTypes Не существует в DataModel.

если я предоставлю какой-либо в приведенной ниже строке, работающей нормально, у меня есть изменения в

   return this.http.get<any>(SERVICE_URL).pipe(

Ошибка в этой строке с типом:

  return res.ProductTypes.map((item:DataModel) => {

Сервисный код:

fetchProduct(): Observable<DataModel[]> {

    return this.http.get<DataModel[]>(SERVICE_URL).pipe(
      map(res => {
        return res.ProductTypes.map((item:DataModel) => {
          return this.Mapper(code, details);
        });
      }),
      catchError(error => this.handleError(error,'error'))
    );
  }

Модель:

  import { ProductType } from './product-type-model';

export class DataModel {
  code?: string;
  ProductTypes?: ProductType;
}

Json ответ от сервера

 {
    ProductTypes:[
      {
        "code":'',
        "details":'name'
      },
      {
        "code":'AS',
        "details":'Laptop'
      }
    ]
    }

1 Ответ

0 голосов
/ 02 ноября 2018

Это потому, что ваша DataModel не синхронизирована с ответом сервера. Объект:

export class DataModel {
  code?: string;
  details?: string;
}

Кстати, что здесь есть import { ProductType } from './product-type-model';

...