从 Eventbrite 获取事件的问题 API

Issue getting events from Eventbrite API

我正在使用 angular js 和节点 js 作为后端构建一个学校项目,我正在尝试使用来自 EventBrite 的 Angular JS 在我的前端显示事件,之后花了几个小时检查不同的教程我写了这段代码

节点 JS 代码:

router.get('/', (req, res)=>{

  axios.get(`${EventsBriteAPI}`).then(result=>{
    let relevantData = result.data.data.events
    res.status(200).json(relevantData);
    console.log(results );
  })

  .catch(error => {
    res.status(500).send(error);
  })
});

我的服务代码:

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


@Injectable({
  providedIn: 'root'
})


export class EventsService {

  uri = 'http://localhost:4600/events';

  constructor(private httpClient: HttpClient) {}


  getAllEvents(){
    return this.httpClient.get(this.uri);
  }

}

我的组件代码

import { Component } from '@angular/core';
import { EventsService } from './events.service';
import { Observable } from 'rxjs/internal/Observable';

@Component({
   selector: 'events',
   templateUrl: 'events.Component.html'
})
export class EventsComponent {
  title = "List of events";
  eventObservable : Observable<any[]> ;
  
  constructor(service: EventsService){


    this.eventObservable = service.getAllEvents();


    console.log(this.eventObservable);


  }


}

当我在 运行 我的代码中出现这个错误 src/app/component/events/events.component.ts(21,5):错误 TS2322:类型 'Observable' 不可分配给类型 'Observable'。 'Object' 类型可分配给极少数其他类型。您是想改用 'any' 类型吗? 类型 'Object' 缺少类型 'any[]' 的以下属性:length、pop、push、concat 和另外 26 个。它没有在我的前端显示任何内容

你能帮我解决一下吗?

我们不需要使用 Observable 类型变量,除非您使用 async 管道或出于任何特定要求。

你可以像下面那样做,

EventsComponent.ts

 eventObservable: any = [];
  
 constructor(private service: EventsService) {
    this.service.getAllEvents().subscribe((response: any) =>{
        this.eventObservable = response;
        console.log(this.eventObservable);
    });
 }

我们通常使用 ngOnInit() 来调用不在 constructor().

中的 api 数据