首页 > 解决方案 > React-Native:Firebase 错误:没有创建 Firebase App [DEFAULT] - 调用 Firebase App.initializeApp() (app/no-app) 站点:stackoverflow.com

问题描述

尝试使用 redux 从 firebase 读取数据时出现以下错误。

React-Native:Firebase 错误:没有创建 Firebase App [DEFAULT] - 调用 Firebase App.initializeApp() (app/no-app)

与 firebase 的连接工作正常,因为我可以创建一个新用户并将新数据添加到 Firestore。

  1. 我已经添加了我的 info.plist 文件
  2. 我在应用程序委托中有配置 firebase
@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
  if ([FIRApp defaultApp] == nil) {
    [FIRApp configure];
  }

我的 redux Actions.js

import firebase from 'firebase/app';
import 'firebase/firestore';

import { USER_STATE_CHANGE, CLEAR_DATA, } from '../constans/index'


//fetch UserInfo from firebase
export function fetchUser() {
  return (dispatch) => {
    firebase
      .firestore()
      .collection("users")
      .doc(firebase.auth().currentUser.uid)
      .get()
      .then((snapshot) => {
        if (snapshot.exists) {
          dispatch({ type: USER_STATE_CHANGE, currentUser: snapshot.data() });
        } else {
          console.log('does not exist');
        }
      });
  };
}

所以有没有人知道我应该做什么。如果我在 Xcode 中添加了“配置”,我是否也应该在 App.js 中添加?

标签: iosfirebasereact-native

解决方案


您需要像这样在应用程序中初始化 firebase 配置文件:

const reactNativeFirebaseConfig = {
    apiKey: ...,
    authDomain: '...',
    databaseURL: ...,
    projectId: ...,
    storageBucket: ...,
    messagingSenderId: ...,
    appId: ...,
};


if (firebase.apps.length === 0) {
    firebase.initializeApp(reactNativeFirebaseConfig);
}

firebase.firestore();

推荐阅读