0
votes

I am trying to import AngularFireList from angularfire2/database but getting this error: node_modules/angularfire2/database/index has no exported member AngularFireList

I'm using angularfire2 version ^5.0.0-rc.0

Below is the code:

import { Component } from '@angular/core';
import { AngularFireDatabase, AngularFireList } from 
'angularfire2/database';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/operator/map';

@Component({
  selector: 'app-root',
  template: `
 <ul>
    <li *ngFor="let item of items | async">
      <input type="text" #updatetext [value]="item.text" />
      <button (click)="updateItem(item.key, 
updatetext.value)">Update</button>
      <button (click)="deleteItem(item.key)">Delete</button>
    </li>
  </ul>
 <input type="text" #newitem />
  <button (click)="addItem(newitem.value)">Add</button>
  <button (click)="deleteEverything()">Delete All</button>
  `,
})
export class AppComponent {
  itemsRef: AngularFireList<any>;
  items: Observable<any[]>;
  constructor(db: AngularFireDatabase) {
    this.itemsRef = db.list('messages');

    this.items = this.itemsRef.snapshotChanges().map(changes => {
      return changes.map(c => ({ key: c.payload.key, ...c.payload.val() }));
    });
  }
  addItem(newName: string) {
    this.itemsRef.push({ text: newName });
  }
  updateItem(key: string, newText: string) {
    this.itemsRef.update(key, { text: newText });
  }
  deleteItem(key: string) {    
    this.itemsRef.remove(key); 
  }
  deleteEverything() {
    this.itemsRef.remove();
  }
    }
1
Try to remove and reinstall angularfire2, it should solve the problemMichele Da Rin
@MicheleDaRin I have tried now it's working. ThanksimSonuGupta

1 Answers

0
votes

It is AngularFireObject not FirebaseObjectObservable and AngularFireList not FirebaseListObservable.

import { AngularFireObject, AngularFireList } from 'angularfire2/database';

Check the migration guide (almothafar, github)