如何呈现依赖Firebase异步功能的组件?

时间:2020-05-29 13:48:48

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

我无法让我的组件从events [0]呈现值。我尝试将数据数组放在.then块中,但是作用域搞砸了。由于Firebase请求是异步的,如何仅当我从Firebase接收数据时才使整个组件呈现?

Finalized.js

const Finalized = () => {
  let events = [];
  firebase
    .database()
    .ref("events/arts/" + 2 + "/name")
    .once("value")
    .then((snapshot) => {
      events.push(snapshot.val());
    });
  let data = [{
      time: "09:00",
      title: "Event 1",
      description: <Text>{events[0]}</Text>,  // {events[0]} has no value returned
    }];
  return (
    <View style={styles.container}>
      <Timeline style={styles.list} data={data} />
    </View>
  );
};

1 个答案:

答案 0 :(得分:0)

您可以使用名为state的{​​{1}}代替变量。

这是怎么做...

events