Я работаю над простым CRUD-приложением в angular2, и у меня возникли проблемы с отправкой на серверный сервер. Мой код для класса выглядит следующим образом:angular2 http: post throwing error
export class PersonForm {
data:Object;
loading: boolean;
personForm: ControlGroup;
http:Http;
constructor(personFormBuilder: FormBuilder) {
this.personForm = personFormBuilder.group({
'name': [],
'age': []
});
}
onSubmit(value:any) : void {
console.log('you submitted these values: ', value);
this.http.post("http://localhost:3000/people/create",JSON.stringify(value))
.subscribe((res: Response) => {
this.data = res.json();
this.loading = true;
});
}
}
Приведенное выше вызывает ошибку в моей консоли. Я не уверен, что не определено, как я после каждого примера я нашел именно:
EXCEPTION: Error during evaluation of "ngSubmit"
ORIGINAL EXCEPTION: TypeError: undefined is not an object
(evaluating 'this.http.post')
Вот мой импорт только в случае, если я пропускаю компонент
import {Component } from 'angular2/core';
import {bootstrap} from 'angular2/platform/browser';
import {CORE_DIRECTIVES,FORM_DIRECTIVES, FormBuilder} from 'angular2/common';
import {HTTP_PROVIDERS, Http, Response, Headers} from 'angular2/http';
import {ControlGroup} from "angular2/common";
Вы должны ввести Http в свой конструктор. –
'Http' должен быть там импортирован, и ваш конструктор классов должен определить новый объект из него. В противном случае он должен быть там в вашем родительском компоненте atleast –