Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从react native连接到firebase_Firebase_React Native_Firebase Realtime Database - Fatal编程技术网

从react native连接到firebase

从react native连接到firebase,firebase,react-native,firebase-realtime-database,Firebase,React Native,Firebase Realtime Database,我正试图用firebase建立一个react native项目,但没有多大成功。配置数据从这里获取:,因此那里的所有内容都会自动生成 以下是我的设置代码: const config = { apiKey: "[MY-API-KEY]", authDomain: "[MY-AUTH-DOMAIN]", databaseURL: "[MY-DATABASE-URL]", storageBucket: "[MY-STORAGE-BUCKET]" } const fi

我正试图用firebase建立一个react native项目,但没有多大成功。配置数据从这里获取:,因此那里的所有内容都会自动生成

以下是我的设置代码:

const config = { 
    apiKey: "[MY-API-KEY]",
    authDomain: "[MY-AUTH-DOMAIN]",
    databaseURL: "[MY-DATABASE-URL]",
    storageBucket: "[MY-STORAGE-BUCKET]"
}

const firebaseApp = firebase.initializeApp(config);
const usersRef = firebaseApp.database().ref('Users');
稍后,如果我尝试运行以下命令:

usersRef.set({ test: "sdfsdf" });
数据库中没有发生任何事情。我也无法从数据库中获取数据


你知道我这里做错了什么吗?

从另一个文件导入
数据库时,我遇到了类似的问题。基本上,当您在同一文件中执行firebase应用程序初始化时,与在
或上执行
设置
方法时相比,这是有效的。但是,一旦您尝试从另一个文件导入
数据库
,配置就会丢失……我认为这与如何绑定javascript或类似的内容有关。我有一个变通办法:

database.js

import * as Firebase from 'firebase'

let HAS_INITIALIZED = false

const initFirebase = () => {
    if (!HAS_INITIALIZED) {
        const config = {
            apiKey: "**************",
            authDomain: "************",
            databaseURL: "*********",
            storageBucket: "*********",
        }

        Firebase.database.enableLogging(true)
        Firebase.initializeApp(config)
        HAS_INITIALIZED = true
    }
}

export const getDatabase = () => {
    initFirebase()
    return Firebase.database()
}
import { getDatabase } from './database'

getDatabase().ref('...') // etc.
然后,在您想要的任何文件中.js

import * as Firebase from 'firebase'

let HAS_INITIALIZED = false

const initFirebase = () => {
    if (!HAS_INITIALIZED) {
        const config = {
            apiKey: "**************",
            authDomain: "************",
            databaseURL: "*********",
            storageBucket: "*********",
        }

        Firebase.database.enableLogging(true)
        Firebase.initializeApp(config)
        HAS_INITIALIZED = true
    }
}

export const getDatabase = () => {
    initFirebase()
    return Firebase.database()
}
import { getDatabase } from './database'

getDatabase().ref('...') // etc.

您的用户是否具有访问数据库的权限?在新创建的项目上,只有经过身份验证的用户才能访问,而您没有进行身份验证。请参阅本页的第一条蓝色提示:如果您在Android上运行,请尝试禁用调试模式。FireBase在RN 0.31上运行时出现一些奇怪的问题。谢谢。我将读写权限都更改为true,但它仍然不起作用。。。据我所知,调试也被禁用。我是否需要以任何方式登录或验证用户?