从“angularfire2 / database”导入{AngularFireDatabase,FirebaseListObservable};

时间:2017-10-09 16:36:48

标签: angular typescript firebase firebase-realtime-database angularfire2

我有问题

import { AngularFireDatabase, FirebaseListObservable } from "angularfire2/database";

我导入了AngularFireDatabase,但搜索后FirebaseListObservable在红线下 这篇文章帮助我解决了我的问题 Getting an error: "Has no exported member AngularFire, AuthProviders, AUthMethods, FirebaseListObservable" in AngularFire2?

import { AngularFireDatabase, FirebaseListObservable } from "angularfire2/database-deprecated"; 

但是当我编译我得到它不能帮助我不知道该怎么做搜索等 core.es5.js:1020 ERROR错误:未捕获(在承诺中):错误:没有AngularFireDatabase的提供者! 错误:没有AngularFireDatabase的提供程序!

“angularfire2”:“^ 5.0.0-rc.2”, “core-js”:“^ 2.4.1”, “firebase”:“^ 4.5.0”,

5 个答案:

答案 0 :(得分:7)

我在阅读https://github.com/angular/angularfire2/blob/master/CHANGELOG.md后得到了答案 5.0.0-rc.0(2017-10-03)

-deprecated允许您使用旧的数据库API

import { AngularFireDatabaseModule } from 'angularfire2/database-deprecated';
app.module.js中的

并在您的服务中使用

 import { AngularFireDatabase, FirebaseListObservable } from "angularfire2/database-deprecated";

谢谢你们两位,你们帮助了我

答案 1 :(得分:4)

在angularfire2":" ^ 5.0.0-rc.2中,您无法使用FirebaseListObservable而是必须使用

import { AngularFireDatabase } from 'angularfire2/database';

并像这样使用

constructor(public af: AngularFireDatabase) {
  let restaurants = this.af.list('/path');
}

答案 2 :(得分:0)

您需要导入以下内容并将其添加到app.module.ts

import { AngularFireModule } from 'angularfire2';
import { AngularFireDatabaseModule } from 'angularfire2/database';


@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    AngularFireModule.initializeApp(firebaseConfig),
    AngularFireDatabaseModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

答案 3 :(得分:0)

当前版本的angularfire2中不能使用FirebaseListObservable。
它适用于旧版本的angularfire2,如4.0.0-rc.1。

因此,安装它后,它将可以正常工作(在终端中):

npm i angularfire2@4.0.0-rc.1

并导入:

import {AngularFireDatabase,FirebaseListObservable} from 'angularfire2/database';

import { AngularFireAuthModule, AngularFireAuth } from 'angularfire2/auth';

答案 4 :(得分:-1)

这可能有点晚了,但如果有人仍然想知道他们可以使用什么作为替代方案,请注意 FirebaseListObservable 已被弃用。

但是,在最新版本的 firebase 中请注意,您可以使用 AngularFireList,并按原样导入...

import { AngularFireDatabase , AngularFireList} from '@angular/fire/database';