그 자체로 백엔드를 업데이트하는 모델을 갖고 싶습니다. 그러나 HTTP를 가져올 때 정의되지 않습니다. 내가 (위의 예에서 반드시 문법적 정확성에 대해 걱정하지) 후있어 무엇을 보여주기 위해 클래스를 단순화했습니다각도 2 - 클래스 (모델)에 Http 삽입
var vehicle = new Vehicle();
vehicle.update(); //this then would update the back end
:
는import {Http, Headers} from "@angular/http";
export class Vehicle {
engine:string
id:number
constructor(private http:Http){
}
update() {
const body = JSON.stringify(engine);
const headers = new Headers();
headers.append('Content-Type', 'application/json');
return this._http.put('http://localhost/v1/vehicles/' + id, body, {headers: headers})
.map(response => response.json());
}
}
아이디어는 다음과 같은 일을 할 것입니다.
이 시나리오에서는 올바르게 바뀌고 오류가 없습니다 하지만 http는 정의되지 않았습니다.
차량 인스턴스의 내용을 가져 와서 VehicleList 서비스로 전달하면 ng2 서비스에서 원하는 것을 얻을 수 있지만 Vehicle 클래스 자체에서 올바르게 수행 할 수 있는지 궁금합니다.
Vehicle 클래스가 Http 클래스를 삽입 할 필요없이 Http 클래스의 인스턴스를 만들 수있는 방법이 있습니까? – Nik
예, 길을 발견했습니다. 잠시 후에 다시 보겠습니다. – rinukkusu
왜'Http'를 삽입하고 싶지 않습니까? –