Nano Hash - криптовалюты, майнинг, программирование

TypeError: Object () не является функцией, вызывающей данные из firebase

мой addevent.ts:

export class EventPage {

eventDetail = {} as EventDetail;

eventDetailRef$: AngularFireList<EventDetail>;

constructor(public navCtrl: NavController, public navParams: NavParams, 
private database: AngularFireDatabase) {
    this.eventDetailRef$ = this.database.list('event-list');
 }

addEvent( eventDetail: EventDetail) {

  this.eventDetailRef$.push({
  eventName: this.eventDetail.eventName,
  eventDesc: this.eventDetail.eventDesc,
  lat: Number(this.eventDetail.lat),
  lgt: Number(this.eventDetail.lgt)
  });

  this.eventDetail = {} as EventDetail;

  this.navCtrl.pop(); 

  }

}

мой showevent.ts:

newEventListRef$ : AngularFireList<EventDetail>;
newEventList$: Observable<EventDetail[]>;

constructor(public navCtrl: NavController, private database: 
AngularFireDatabase) {
this.tabs=["New", "Upcoming"];
this.newEventListRef$ = this.database.list<EventDetail>('event-list');
this.newEventList$ = this.newEventListRef$.valueChanges();
}

мой showevent.html

<ion-list>
    <ion-item *ngFor="let new of newEventList$ | async">
      <h2>{{new.eventName}}</h2>
      <h4>{{new.eventDesc}}</h4>
      <h6>{{new.lat}}</h6>
      <h6>{{new.lgt}}</h6>
    </ion-item>
  </ion-list>

Проблема: TypeError: Object (...) не является функцией

Я не могу вызвать данные из firebase, в VScode нет пометок или ошибок, я очень новичок в ionic 3, извините, если я допущу простейшие ошибки.

Трассировки стека:

TypeError: Object(...) is not a function
    at SwitchMapSubscriber.project (http://localhost:8100/build/vendor.js:78721:76)
    at SwitchMapSubscriber._next (http://localhost:8100/build/vendor.js:62701:27)
    at SwitchMapSubscriber.Subscriber.next (http://localhost:8100/build/vendor.js:20750:18)
    at RefCountSubscriber.Subscriber._next (http://localhost:8100/build/vendor.js:20786:26)
    at RefCountSubscriber.Subscriber.next (http://localhost:8100/build/vendor.js:20750:18)
    at Subject.next (http://localhost:8100/build/vendor.js:23237:25)
    at ConnectableSubscriber.Subscriber._next (http://localhost:8100/build/vendor.js:20786:26)
    at ConnectableSubscriber.Subscriber.next (http://localhost:8100/build/vendor.js:20750:18)
    at Notification.observe (http://localhost:8100/build/vendor.js:52585:50)
    at AsyncAction.DelaySubscriber.dispatch (http://localhost:8100/build/vendor.js:81001:40)

  • У вас есть трассировка стека ошибки? 11.09.2018
  • извини, я сразу отредактирую это 11.09.2018

Ответы:


1

Пожалуйста, обновите rxjs в своем проекте, также вы должны включить rxjs-compat. Попробуйте сделать это с помощью следующей команды:

npm i rxjs@6 rxjs-compat@6 promise-polyfill --save

Также вы должны использовать подписку при получении данных списка следующим образом:

this.database.list<EventDetail>('event-list').valueChanges().subscribe((eventData) => 
{ 
  console.log("eventDetails data", eventData);
},(err)=>{
   console.log("Error while retrieving eventDetails : ", err);
}); 
11.09.2018
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..