Аргумент типа '{заголовки: HttpHeaders;params: URLSearchParam ... в методе http, когда я пытаюсь передать params - PullRequest
0 голосов
/ 13 июня 2019

Я создал RestService с описанием методов http. У меня проблема, когда я пытаюсь передать HttpParams этим методам и когда я создаю новый HttpRequest. Ниже метод. Проблема с params?: URLSearchParams | HttpParams | { [key: string]: any | any[] } | null

post<T>(
    relativeUrl: string, 
    body?: any, 
    params?: URLSearchParams | HttpParams | { [key: string]: any | any[] } | null, 
    headers?: HttpHeaders | null, 
    responseType?: 'arraybuffer' | 'blob' | 'json' | 'text' | null): Observable<HttpResponse<T>> {
        return this.executeRequest(this.createRequest(relativeUrl, body, params, headers, responseType, RequestMethod.POST));
}

В методе createRequest пишу следующий код

let init = {
    headers: headers,
    params: params,
    responseType: responseType
};

return new HttpRequest(method, url, body, init);

Но init сообщается как ошибка

ошибка TS2345: Аргумент типа '{headers: HttpHeaders; params: URLSearchParams | HttpParams | {[ключ: строка]: любой; }; responseT ... 'не может быть назначен параметру типа' {headers ?: HttpHeaders; reportProgress ?: логический; params ?: HttpParams; responseType ?: "текст" | »...".

Что не так?

...