Свойство «подписка» не существует для типа «OperatorFunction <{}, {}>» - PullRequest
0 голосов
/ 03 мая 2019

Я хочу разместить сообщение на тестовом сервере, но обнаружил две ошибки при использовании Map и Subscribe.Обратите внимание, что ниже я использую оба в consultaCEP (), и он работает.

Использование W10, vscode, angular 6.

import { HttpClient } from '@angular/common/http';
import { map } from 'rxjs/operators';
import { Observable, Subject } from 'rxjs';
import { Subscription } from 'rxjs';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/catch';
@Component({
  selector: 'app-cadastro',
  templateUrl: './cadastro.component.html',
  styleUrls: ['./cadastro.component.css']
})
export class CadastroComponent implements OnInit {

  onSubmit(form){
    //console.log(form);

    this.http.post('https://httpbin.org/post', JSON.stringify(form.value));
    .map(res => res)
    .subscribe(dados => console.log(dados));

  }

  constructor(private http: HttpClient) { }

}
  consultaCEP(cep, form){
        this.http.get(`//viacep.com.br/ws/${cep}/json`)
          .map(dados => dados)
          .subscribe(dados => this.populaDadosForm(dados, form));
      }

    }
  }

Я ожидаю, что решить эту проблему ипост на тестовом сервере

1 Ответ

0 голосов
/ 03 мая 2019

вам нужно pipe ваша функция отображения, чтобы заставить это работать:

 this.http.post('https://httpbin.org/post', JSON.stringify(form.value));
.pipe(map(res => res))
.subscribe(dados => console.log(dados));

, кроме того, функция map полностью избыточна в вашем случае, так как она просто возвращает значение, которое она получает

За дополнительной информацией обращайтесь к этому blogpost

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