объекты не действительны как реагируют дочерние (реагировать-нативно) - PullRequest
0 голосов
/ 07 июня 2018

Я пытаюсь инициализировать firebase в моем собственном проекте.

Это ошибка, с которой я сталкиваюсь

код для App.js, где я инициализирую это

import React, {Component} from 'react';
import {View, Text} from 'react-native';
import {Provider} from 'react-redux';
import {createStore} from 'redux';
import reducers from './reducers';
import firebase from 'firebase';

class App extends Component {

  componentWillMount () {
    const config = {
      apiKey: "",
      authDomain: "",
      databaseURL: "",
      projectId: "",
      storageBucket: "",
      messagingSenderId: ""
    };
    firebase.initializeApp(config);
  }

  render() {
    return (
      <Provider store={createStore(reducers)}>
      <View>
        <Text>Hello! </Text>
      </View>
    </Provider>
    );
  }
}

export default App;

Я даже сталкиваюсь с тем жеошибка, когда я включаю только import firebase from 'firebase'; и не инициализирую config

Ответы [ 2 ]

0 голосов
/ 29 июля 2018

Экспорт изменился в версии 5.0.4 и новее.Теперь вам нужно сделать это следующим образом:

import firebase from '@firebase/app'

Если вы используете eslint, вы, вероятно, получите жалобу на то, что она должна быть указана в зависимостях проекта, но вы можетеигнорируй это.

Возможно, вы также захотите использовать реальные возможности Firebase, а не только импорт ядра.Например, чтобы использовать модуль аутентификации, вы должны добавить следующее:

import '@firebase/auth'

0 голосов
/ 07 июня 2018

Попробуйте инициализировать конструктор вместо componentWillMount

import React, {Component} from 'react';
import {View, Text} from 'react-native';
import {Provider} from 'react-redux';
import {createStore} from 'redux';
import reducers from './reducers';
import firebase from 'firebase';

class App extends Component {

 constructor(props){
    super(props)
    const config = {
      apiKey: "",
      authDomain: "",
      databaseURL: "",
      projectId: "",
      storageBucket: "",
      messagingSenderId: ""
    };
    firebase.initializeApp(config);
  }


  render() {
    return (
      <Provider store={createStore(reducers)}>
      <View>
        <Text>Hello! </Text>
      </View>
    </Provider>
    );
  }
}

export default App;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...