Ваша проблема в extractData
.Вы возвращаете объект Response
, поэтому при использовании у вас нет ожидаемого json.Чтобы решить эту проблему, получите json из объекта Response
, используя метод .json()
:
public extractData(res) {
let body = res.json();
return body || {};
}
Совет : Вы можете использовать функцию ES6, называемую деструктуризацией, при доступе кJSON свойство.Например:
provinsi() {
this.pservice.provinsi()
.subscribe(({ results }) => this.provinsis = results);
}
ОБНОВЛЕНИЕ: Если вы хотите работать с классами TypeScript, вам необходимо импортировать класс Response
из @angular/http
:
import { Http, Response } from '@angular/http';
Этот класс устарел.Вы можете проверить новое использование в этом вопросе здесь