如何在使用它们来获取数据之前从firebase之前加载URL?

时间:2017-11-19 23:11:59

标签: javascript reactjs react-native

我正在尝试从firebase数据库加载一些URL并从网址中获取数据,但是我收到错误说" Undefined不是函数"当我使用这段代码时:

listenForItems(itemsRef) {
    itemsRef.on('value', (snap) => {
      var items = [];
      snap.forEach((child) => {
        items.push({
          url: child.val().url,
          name: child.val().name,
          image: child.val().image,
          _key: child.key
        });
      });
      this.setState({ urls: items });
    }).then(() => {
      this.fetchData();
    });
  }

当我删除"然后"它可以工作,但获取的数据不断重复:

listenForItems(itemsRef) {
    itemsRef.on('value', (snap) => {
      var items = [];
      snap.forEach((child) => {
        items.push({
          url: child.val().url,
          name: child.val().name,
          image: child.val().image,
          _key: child.key
        });
      });
      this.setState({ urls: items });
      this.fetchData();
    })
  }

0 个答案:

没有答案