2017-10-25 2 views
0

우리는 페이지가 거의없는 이온 프로젝트와 하나의 맞춤형 제공 업체를 보유하고 있습니다. 공급자는 아래 표시된 request.ts입니다. 문제는 매번 출시 할 때마다 : ionic serve - lab. 컴파일이 실제로 실패합니다 (request.ts에서 http.post의 헤더로 오류가 있음). 그러면 app.module.ts 파일에 수동으로 들어가서 저장해야합니다. 모든 것이 잘 작동하기 시작합니다.Ionic serve - 제대로 작동하기 전에 app.module.ts를 수동으로 저장해야하는 랩

import { Injectable } from '@angular/core'; 
 
import { Http } from '@angular/http'; 
 

 
import 'rxjs/add/operator/toPromise'; 
 
import 'rxjs/add/operator/map'; 
 

 
@Injectable() 
 
export class RequestProvider { 
 

 
    constructor(public http: Http) { 
 
    console.log('Hello RequestProvider Provider'); 
 
    } 
 

 
    getSomeResponce(callBack) { 
 
    this.http.post(
 
     "some.domain.net/some/service", 
 
     { "argument1": "1", "argument2": "2"}, 
 
     { headers: { "Content-Type" : "application/json" } } 
 
    ).toPromise() 
 
    .then(res => callBack(res)); 
 
    } 
 
}

app.module 같은 공급자를 가져옵니다

타이프 라이터 오류 인수의 :

import { RequestProvider } from '../providers/request/request'; 

이것은 우리가 처음 시작할 때 얻을 오류입니다 '{headers : { "Content-Type": 문자열; }; } '이 (가) 'RequestOptionsArgs '유형의 매개 변수에 할당 할 수 없습니다. '헤더'속성 유형이 호환되지 않습니다. '{ "Content-Type": string; } '은 (는) '헤더 '유형에 할당 할 수 없습니다. 개체 리터럴은 알려진 속성 만 지정할 수 있으며 ' "Content-Type"'유형이 '머리글'유형에 없습니다.

비록 문제가 크지는 않지만, 그것은 성가심이며 도로 아래로 더 큰 문제가 있음을 나타낼 수 있습니다.

답변

0

사용자 정의 HTTP 헤더

import { Http, Headers } from '@angular/http'; // import Headers 

headers: Headers = new Headers(); // init variable headers 

this.headers.set('Content-Type', 'application/json'); // set header 

this.http.post(url, data, {headers : this.headers}) // use it in your request 
+0

이상한 것은이 코드가 잘 작동하다을 사용할 수있는 올바른 방법을 이잖아. 그것은 json 파일을 서버에서 가져옵니다. 이온화 된 서버가 처음 작동 한 후 처음으로 작동하지 않습니다. 들어가서 app.module.ts를 저장하면 제대로 작동합니다. 내가 일하러 돌아와 오류가 지속되면 알려주도록 코드를 시험해 보겠습니다. –

관련 문제