Angular сервис не может получить остальную информацию API - PullRequest
0 голосов
/ 02 февраля 2020

Я новичок в angular при использовании API данных формы отдыха. Я получаю следующие ошибки

import { Injectable } from '@angular/core';
import { HttpClient , HttpResponse} from '@angular/common/http';
import {map} from 'rxjs/operators';
import {Observable} from 'rxjs';
@Injectable({
  providedIn: 'root'
})
export class CountriessService {

  constructor(private httpclient: HttpClient )  {}

  public getContries():any{
    this.httpclient.get("https://restcountries.eu/rest/v2/all") .pipe(map(response=>{
    return response.json();
    }));
  }
}

1. Ожидаемый пробел после двоеточия в call-signaturetslint (typedef-whitespace)

2. "Должен быть" tslint (кавычка)

3.Свойство 'json' не существует для типа 'Object'.ts (2339)

4. (Параметр) ответ: Object

1 Ответ

0 голосов
/ 02 февраля 2020
import {map} from 'rxjs/operators';
import {Observable} from 'rxjs';

import { Injectable } from '@angular/core';
import { HttpClient, HttpResponse} from '@angular/common/http';

@Injectable({
  providedIn: 'root'
})
export class CountriesService {
  constructor(private httpclient: HttpClient) {}

  public getContries(): Observable<any> {
    return this.httpclient.get<any>('https://restcountries.eu/rest/v2/all');
  }
}

1 и 2 - ошибки tslint. Я полагаю, что первый - это пробел после конструктора, а второй - использование одинарных, а не двойных кавычек. У вас были двойные кавычки вокруг вашего URL. TSlint используется для обеспечения согласованного стиля кодирования в рамках всего проекта и среди участников. Вы можете изменить значения по умолчанию, отредактировав tslint.json

3 - вызов .json(). Поскольку angular 4 HttpClient заменил модуль Http и внутренне вызывает .json(), так что этого больше не существует в ответе на вызов .get().

4 Вам следует установить Значение generi c для типа возвращаемого значения.

Лучше было бы использовать подходящую IDE, которая будет давать вам достойные предупреждения во время записи, и немного больше исследований об этих ошибках подтолкнет вас в правильном направлении, и с его помощью настройте линтер как более симпатичный, чтобы ваш код форматировался в соответствии с правилами при сохранении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...