2016-12-03 3 views
0

Я пытаюсь сделать мой код максимально совершенным. Если я использую приложение App.js для github или что-то еще, я не хочу, чтобы он удалял идентификатор, я бы просто включил его в отдельный файл и просто .gitignore.Почему моя конфигурация firebase не работает?

По какой-то причине мое приложение просто не нравится, как я это делаю, и мне сложно работать вокруг. Любая идея, что я делаю неправильно?

Это мой App.js файл:

import firebase from 'firebase'; 
import { 
    apiKey, 
    authDomain, 
    databaseURL, 
    storageBucket, 
    messagingSenderId 
} from './constants/Keys'; 

class App extends Component { 
    constructor(props) { 
    super(props); 
    this._navContext = initNavigationContext(); 
    } 

    componentWillMount() { 
    const config = { 
    apiKey, 
    authDomain, 
    databaseURL, 
    storageBucket, 
    messagingSenderId 
    }; 

    firebase.initializeApp(config); 
    } 

    render() { 
    return (
     <Provider store={Store}> 
     <NavigationProvider context={this._navContext}> 
      <StackNavigation navigatorUID="root" id="root" initialRoute={Router.getRoute('auth')} /> 
     </NavigationProvider> 
     </Provider> 
    ); 
    } 
} 

export default App; 

я опустил другие операторы импорта здесь.

Вот мой Keys файл:

const apiKey = '//////'; 
const authDomain = '//////'; 
const databaseURL = '//////'; 
const storageBucket = '//////'; 
const messagingSenderId = '//////'; 


const facebookAppID = '//////'; 

export default { 
    apiKey, 
    authDomain, 
    databaseURL, 
    storageBucket, 
    messagingSenderId, 
    facebookAppID 
}; 

Любая идея, что я делаю неправильно здесь?

ответ

1

Я думаю, что ваша проблема заключается в том, что вы пытаетесь разрушить экспорт по умолчанию и что модули ES6 используют деструктурирование для именованного экспорта. Если ваши импортированные значения имеют все undefined, это, скорее всего, случай. Вы можете сделать следующее:

export const apiKey = '//////'; 
export const authDomain = '//////'; 
export const databaseURL = '//////'; 
export const storageBucket = '//////'; 
export const messagingSenderId = '//////'; 


export const facebookAppID = '//////'; 

И тогда это должно сработать.

Смежные вопросы