2017-10-19 1 views
0

Ich habe folgende wurden zusammen mit der Traversy Media Angular4 course auf Udemy und alles gut gegangen ist, bis ich auf die AngularFire2 Setup-& Client Service Teil des Client-Panel-Projekt bekam. Webpack kann nicht kompiliert werden und besagt Folgendes: FirebaseListObservable und FirebaseObjectObservable haben keine exportierten Mitglieder.AngularFire Update bricht die App

Ich sah ein paar Leute, die similar issues on GitHub hoben, aber war nicht imstande, herauszufinden, wie man es löst. Ich habe auch den genauen Code ausprobiert, der vom Lehrer zur Verfügung gestellt wurde (das war der letzte Ausweg, da ich es lieber selbst herausfinden würde), aber das hat auch nicht funktioniert. Angularfire2 Version ist: 4.0.0-rc.1

Fehlermeldung: Webpack fails to compile

Hier ist die client.service.ts Datei:

import { Injectable } from '@angular/core'; 
import { AngularFireDatabase, FirebaseListObservable, FirebaseObjectObservable} from 'angularfire2/database'; 
import { Observable } from 'rxjs'; 
import { Client } from '../models/Client'; 

@Injectable() 
export class ClientService { 
    clients: FirebaseListObservable<any[]>; 
    client: FirebaseObjectObservable<any>; 

    constructor(
    public af:AngularFireDatabase 
) { 
    this.clients = this.af.list('/clients') as FirebaseListObservable<Client[]>; 
    } 

    getClients(){ 
    return this.clients; 
    } 

    newClient(client:Client){ 
    this.clients.push(client); 
    } 

    getClient(id:string){ 
    this.client = this.af.object('/clients/'+id) as FirebaseObjectObservable<Client>; 
    return this.client; 
    } 

    updateClient(id:string, client:Client){ 
    return this.clients.update(id, client); 
    } 

    deleteClient(id:string){ 
    return this.clients.remove(id); 
    } 

} 

Dies ist die einzige Datei, die in zeigt Fehler VS Code linter: No exported member error

Vielen Dank im Voraus für hilfreiche Einblicke.

+1

Sie verwenden derzeit einen Veröffentlichungskandidaten, versuchen, auf '4.0' oder' 5.0' zu aktualisieren und importieren ihn dann wie unten beschrieben. – Orlandster

Antwort

1

In den letzten Versionen gab es drei verschiedene Möglichkeiten zum Importieren von Datenbankobservablen.

Version < 4.0:

import { AngularFire, FirebaseListObservable, FirebaseObjectObservable } from "angularfire2"; 

version> 4.0:

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

version> 5.0:

Da 5.0 können Sie normalen verwenden observables statt oder es aus dem veralteten Verzeichnis wie folgt importieren:

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

Ich würde Ihnen empfehlen, Ihre Version rc-4.0 oder etwas zu aktualisieren.

Verwandte Themen