Firebase开发和实时版本

时间:2017-07-09 20:59:42

标签: angularjs firebase firebase-hosting

我一直在寻找解决这个问题的方法。我不确定我错过了什么。但从我所看到的,我能够创建两个firebase数据库(Live和Development)并分别使用它们。但是,无论我做了什么,我的本地服务版本仍然从实时版本中提取。这就是我所做的。

在firebase中创建了开发项目

firebase use --add添加为将别名添加为别名

firebase use确认并取回以下内容:

default (live project-code)
development (development project-code)

firebase use development

firebase serve

现在,我想如果我加载localhost:5000,我会看到空表,因为我的数据库在开发中是空的。相反,我仍然看到我的实时数据。

我是否认为这个功能比实际功能更多,或者我只是遗漏了什么?

我正在使用Firebase进行身份验证,数据库,存储,托管和功能。这是基于AngularJs的所有基于Web的。

更新

所以看来我发现了这个问题。在我的app.js文件中,我正在定义数据库URL,我也有firebase配置块。

.constant('FirebaseDatabaseUrl', 'LiveProjectUrl')

.config(function($firebaseRefProvider, FirebaseDatabaseUrl, $routeProvider, $locationProvider) {
    var config = {
        apiKey: "",
        authDomain: "",
        databaseURL: "",
        projectId: "",
        storageBucket: "",
        messagingSenderId: ""
    };
    firebase.initializeApp(config);

})

这两个部分(控制台代码和硬代码)应该如何协同工作?或者我不需要这个app.js代码?如果我只是在开发过程中为development = true设置变量,那么当我想上传到live时,如何更改?

更新2

我在配置块中使用变量创建了一个简单的if else语句,但我觉得应该有更好的方法来执行此操作。

1 个答案:

答案 0 :(得分:1)

Firebase Hosting最近通过使用特殊脚本添加了auto-configure the Firebase SDKs的功能,包括:

<script src="/__/firebase/4.1.3/firebase-app.js"></script>
<script src="/__/firebase/4.1.3/firebase-auth.js"></script>
<script src="/__/firebase/4.1.3/firebase-storage.js"></script>
<!-- load Firebase SDK before loading this file -->
<script src="/__/firebase/init.js"></script>

这样可以让您的网站正确配置,而无需应用任何逻辑。