2016-06-13 93 views
2

我想在本地做出反应集成火力点。但是我遇到了Firebase的小问题。 这是我的代码。我也附加了一个屏幕截图。 我使用反应原生0.27。火力地堡不工作的反应本地

请帮忙。 谢谢

enter image description here

import React, { Component } from 'react'; 
import { 
    AppRegistry, 
    StyleSheet, 
    Text, 
    View, 
    TouchableHighlight, 
    TextInput, 
    ListView 
} from 'react-native'; 

import Firebase from 'firebase'; 

class devdacticFirebase extends Component { 
    constructor(props) { 
    super(props); 
    var itemsRef = new Firebase('https://<myid>.firebaseio.com/items'); 

    this.state = { 
     newTodo: '', 
     dataSource: new ListView.DataSource({rowHasChanged: (row1, row2) => row1 !== row2}) 
    }; 
    } 
    render(){ 
    return(
     <View /> 
    ); 
    } 
} 


AppRegistry.registerComponent('devdacticFirebase',() => devdacticFirebase); 
+0

我使用'NPM如果我没有记错的火力地堡3.x版本不安装火力--save' –

+0

支持React native –

+0

是的,如果它是正确的。这真的很糟糕 –

回答

1

的消息告诉您火力地堡不是构造函数,所以你不能用它new。官方的文档说明如何初始化您的应用程序:

var firebase = require('firebase'); 

var app = firebase.initializeApp({ 
    apiKey: '<your-api-key>', 
    authDomain: '<your-auth-domain>', 
    databaseURL: '<your-database-url>', 
    storageBucket: '<your-storage-bucket>' 
}); 
+0

谢谢你的帮助。但我只是做喜欢这样的方式https://firebase.googleblog.com/2016/01/the-beginners-guide-to-react-native-and_84.html教程。但让我尝试一下你的建议 –

+1

显然firebase 3仍然不能与react-native一起工作。我认为2.4.2曾经工作过,现在可以使用该版本。那么你必须像你在你的问题那样使用它作为构造函数 –

+0

是的,它是正确的。我没有重新安装版本2.4.2,它的工作。感谢专业 –

0

他们改变了文档中的JS初始化火力项目,所以它会工作在本地做出反应。

保持代码相同的其余部分与该替换的构造:

var itemsRef = { 
apiKey: '<your-api-key>', 
authDomain: '<your-auth-domain>', 
databaseURL: '<your-database-url>', 
storageBucket: '<your-storage-bucket>' 
}; 

Firebase.initializeApp(itemsRef);