Ich habe überall nach einer Lösung für dieses Problem gesucht. Ich bin mir nicht sicher, was ich vermisse. Aber von dem, was ich sehen kann, bin ich in der Lage, zwei Firebase-Datenbanken (Live und Entwicklung) zu erstellen und sie jeweils zu verwenden. Aber egal, was ich getan habe, meine lokal gediente Version zieht immer noch aus der Live-Version. Das habe ich getan.Firebase-Entwicklung und Live-Versionen
Erstellt Entwicklungsprojekt in Feuerbasis
firebase use --add
Ran Entwicklung hinzuzufügen, als Alias
firebase use
Ran zu bestätigen und stieg wieder folgendes:
default (live project-code)
development (development project-code)
Ran firebase use development
Ran firebase serve
Jetzt würde ich denken, wenn ich localhost laden: 5000 würde ich nur leere Tabellen sehen, wie meine Datenbank in der Entwicklung leer ist. Stattdessen sehe ich immer noch meine Live-Daten.
Denke ich, diese Funktion tut mehr als es wirklich tut oder fehle ich gerade etwas?
Ich benutze Firebase für Auth, Datenbank, Speicher, Hosting und Funktionen. Dies ist alles webbasiert mit AngularJs.
UPDATE
So scheint es, ich das Problem gefunden habe. In meiner app.js
Datei definiere ich die Datenbank-URL und ich habe auch den Firebase-Konfigurationsblock.
.constant('FirebaseDatabaseUrl', 'LiveProjectUrl')
.config(function($firebaseRefProvider, FirebaseDatabaseUrl, $routeProvider, $locationProvider) {
var config = {
apiKey: "",
authDomain: "",
databaseURL: "",
projectId: "",
storageBucket: "",
messagingSenderId: ""
};
firebase.initializeApp(config);
})
Wie sollen diese zwei Teile (der Konsolencode und der harte Code) zusammenarbeiten? Oder brauche ich diesen app.js
Code nicht? Wenn ich während der Entwicklung nur eine Variable für development = true setze, wie würde ich es ändern, wenn ich live hochladen möchte?
UPDATE 2
habe ich eine einfache, wenn else-Anweisung in meinem Konfigurationsblock mit einer variablen, aber ich fühle mich wie es einen besseren Weg, dies zu tun sein sollte.
Könnte mir das dabei helfen, die cloud-Funktionsbasis-URL für die verschiedenen Projekte zu liefern? –
@MitchEvans Nicht wirklich. Wenn Sie die aktuelle Hosting-Site mit dem Cloud-Funktionen-Back-End verknüpfen möchten, sollten Sie Aufrufe der Site von der Site zum Back-End mithilfe von Umschreibungsregeln weiterleiten, damit Sie sich nicht um den Back-End-Hostnamen kümmern müssen. https://firebase.google.com/docs/hosting/functions –