在firebase.databse中更改变量

时间:2019-01-03 18:25:21

标签: javascript reactjs firebase firebase-realtime-database

我有一个函数并调用firebase数据库,我想获取值并传递给函数内部的declate变量,但不起作用。怎么办?

subObjectTable(data, cell) {
    ...
    const database = fire.database();
    let nome;
    database
    .ref(`/proprietários/${getProp}`)
    .on('value', snapshot => {
      let data = snapshot.val();
      nome = data.Nome;
    })
    console.log('nome', nome) // undefined
}

1 个答案:

答案 0 :(得分:2)

Firebase API是异步的,并且会立即返回。查询结果将在一段时间后与查询结果一起提供。 subObjectTable将在第一次回调发生时完全完成。

如果您想对值nome进行操作,则必须在传递给on()的函数回调中 进行操作,或调用一些还有其他功能。