Angular Observable возвращает подписчика вместо JSON, а строка показывает undefined и нет результата

Функция ngOnInit, которую я определил в файле as.

      async ngOnInit(){    
    await this.api.GetSwapi()
    await this.api.mySubject.subscribe(data => console.log); //Not getting data in console log
    await this.api.mySubject.subscribe((data: any) => console.log); //Not getting data in console log
    console.log('---------------------123123123-----------------------');//working
    await this.api.GetSwapi2().subscribe(j => console.log(j)); //Getting undefined two times
    await this.api.testSubject.subscribe(data => console.log); //Not getting data in console log
}

Вот мой api.service.ts.

      export class ApiService {  
  constructor(private http: HttpClient) { }

  mySubject = new Subject();
  testSubject = new Subject<string>();

  GetSwapi(){ //FUNCTION 1
    this.http.get<any>('https://swapi.dev/api/people/')    
    .subscribe(data => {
        console.log(data.results);
        this.mySubject.next(data.result);        
    });
  }

  GetSwapi2(): Observable<any> { //FUNCTION 2
    this.http.get<any>('https://swapi.dev/api/people/')
    .subscribe(data => {        
        this.mySubject.next(data.result);        
    });
    this.testSubject.next('woooow');
    return this.mySubject.asObservable();
  }
}

Только это шоу undefined два раза await this.api.GetSwapi2().subscribe(j => console.log(j));
другие не могут видеть данные в console.log Я просто пытаюсь получить данные в свой app.component.ts.

1 ответ

Нашел в своем ответе небольшую ошибку.

      GetSwapi(){ //FUNCTION 1
    this.http.get<any>('https://swapi.dev/api/people/')    
    .subscribe(data => {
        console.log(data.results);
        this.mySubject.next(data.result);        
    });
  }

Проблема в следующем .. this.mySubject.next(data.result); это results нет result в виде console.log(data.results) показывал результат.

Другие вопросы по тегам