У меня есть интерфейс:
export interface Device {
id: string;
name: string
}
и я высмеиваю http-ответ с дополнительными данными:
import { Injectable } from '@angular/core';
import { Device } from './device.model';
import { Observable, timer } from 'rxjs';
import { mapTo } from 'rxjs/operators';
const devices = [
{
id: '1',
name: 'device1',
serial: 'fdfd'
},
{
id: '2',
name: 'device2',
serial: 'fdfd'
},
];
@Injectable({
providedIn: 'root'
})
export class DevicesDataService {
constructor() { }
getDevices(): Observable<Array<Device>> {
return timer(200).pipe(mapTo(devices));
}
}
Проблема в том, что возвращается ответ с 3 полями.
Как вернуть ответ, соответствующий интерфейсу, чтобы Observable<Array<Device>>
содержал только 2 поля?
Я хочу вызвать метод getDevices()
и получить доступ к массиву объектов устройства только с id, полями имен.