Ich versuche, eine Web-App mit Angle2- und Firebase 3.0-Authentifizierung gemäß den von Google vorgegebenen Richtlinien zu entwickeln. Alle Handbücher für das Web enthalten jedoch Javascript-Beispiele.
Ich habe unten in meine index.html Zeilen eingefügt
<script src="https://www.gstatic.com/firebasejs/live/3.0/firebase.js"></script>
var config = {
apiKey: "AIzaSyCSfBMvAdEDpcm-z6gWp2XXXXXXXXXXXXX",
authDomain: "fototrans-calculator.firebaseapp.com",
databaseURL: "https://fototrans-calculator.firebaseio.com",
storageBucket: "fototrans-calculator.appspot.com",
};
firebase.initializeApp(config);
Aber wenn ich versuche zu benutzen
rootRef = firebase.database.ref();
Ich bekomme einen Fehler in der 'Firebase'-Meldung
[ts] Cannot find name 'firebase'.
Jetzt erinnere ich mich, dass ich Firebase unter Verwendung der Typisierung für die vorherige Version von Firebase installiert hatte. Haben wir wieder etwas für die neue Version von Firebase? Bitte führen Sie.
Danke im Voraus
Ab Firebase 3.2.1 sind die Typisierungen Bestandteil des offiziellen NPM-Pakets:
https://firebase.google.com/support/release-notes/js#wzxhzdk4version_321_-_july_26_2016wzxhzdk5
Sie können dies umgehen, indem Sie declare var firebase: any;
ausführen.
Es gibt eine Typdefinitionsdatei unter https://github.com/suhdev/firebase-3-TypeScript .
Ich habe eine pull-Anfrage eingereicht, mit der das von Ihnen beschriebene Problem hoffentlich gelöst wird.
Sie können die Typings-Definitionsdatei verwenden, die im AngularFire2-GitHub-Repository (unter hier ) enthalten ist:
Fügen Sie Folgendes in Ihre typings.json
-Datei ein:
{
"ambientDependencies": {
"firebase": "github:angular/angularfire2/manual_typings/firebase3/firebase3.d.ts#2c9ab3117eeb804e8e4996461eddcf32efa54a56"
}
}
Beachten Sie, dass der Wert hier einfach der Pfad zu der Datei auf GitHub ist, gefolgt von dem entsprechenden Festschreibhash. Der Hash im Beispiel ist zum Zeitpunkt des Schreibens master
, daher möchten Sie möglicherweise auf das letzte Commit aktualisieren.
Als Nächstes können Sie node_modules/.bin/typings install
ausführen, und Typings übernimmt die neuesten Änderungen in Ihrer typings.json
-Datei.
Sie können versuchen, es hier zu verwenden: https://github.com/angular/angularfire2/tree/master/manual_typings/firebase3
Und damit es funktioniert, müssen Sie es Ihrer tsconfig.json hinzufügen:
"filesGlob": [
"**/*.ts",
"!node_modules/**/*",
"firebase3.d.ts"
],
Kopieren Sie die Datei in den gleichen Ordner wie Ihre Datei tsconfig.json.