我正在创建一个Ionic应用,其中有一个我要显示的信息列表,我使用Firebase作为我的数据库(实时数据库)。
但我一直收到这个错误:
对象(...)不是函数
而且我不确定为什么因为代码似乎很好(我检查了angularfire2 git以确保)。
所以这是代码:
list.ts
import { Component } from '@angular/core';
import { NavController, NavParams } from 'ionic-angular';
import { AngularFireDatabase } from 'angularfire2/database';
@Component({
selector: 'page-list',
templateUrl: 'list.html'
})
export class ListPage {
informationslist:any;
constructor(public navCtrl: NavController, public navParams: NavParams,
private afDB: AngularFireDatabase) {
try{
this.informationslist = afDB.list('information', (ref) =>
ref.orderByChild('datetime')).valueChanges();
}catch(e){
console.log(e);
}
}
}
list.html
<ion-header>
<ion-navbar>
<button ion-button menuToggle>
<ion-icon name="menu"></ion-icon>
</button>
<ion-title>List</ion-title>
</ion-navbar>
</ion-header>
<ion-content>
<ion-list>
<ion-item *ngFor="let i of informationslist | async">{{i.title}}</ion-item>
</ion-list>
</ion-content>
答案 0 :(得分:3)
请提供rxjs的版本。在大多数情况下,它的错误版本可能存在问题。我认为当前的angularfire2需要rxjs版本6.0.0或更高版本。完整的JavaScript堆栈也很有用。
此外,如果您之前使用过其他rxjs版本,现在尝试升级,请考虑迁移指南:Migration guide rxjs from 5 to 6