监听器代理Firebase不仅在ComponentDidMount方法中

时间:2018-05-06 07:48:56

标签: javascript firebase react-native firebase-realtime-database

有没有办法在状态更改后设置数据库代理侦听器?我的意思是通常我们习惯在componentDidMount方法上设置它。但我想根据一个州来称呼它。

我希望我的用户获取特定数据的列表,而不是所有节点。该数据不应该直接在应用程序启动时聆听"然后应用程序采取特定状态。

firebase.database().ref("myRef")
    .on("value", (snap)=>{ 
        console.log(snap.val()) 
    }
)

1 个答案:

答案 0 :(得分:1)

尝试定义一个函数,并在状态发生变化时调用它:

 functionForstateChange(){
    //call this function when you want to change your state.
   //setState here and make your required state changes if you need.
   this.functionForDatabase();    //call the function here
 }
 functionForDatabase(){
    //set your required database code here
 }