【问题标题】:Why does my React Native FlatList keyExtractor return undefined?为什么我的 React Native FlatList keyExtractor 返回未定义?
【发布时间】:2020-06-05 15:15:23
【问题描述】:

我编写了一个函数来获取 Firebase 实时数据库中项目的密钥。 功能:

getKey = (index) => {
    offersRef.on('value', snapshot => {
      let data = snapshot.val();
      const key = Object.keys(data)[index]
      console.log('the key is ' + key)
      return key
    })
  }

FlatList 中的keyExtractor:

keyExtractor={(item, index) => this.getKey(index), console.log(this.keyExtractor)}

这个函数在我的 FlatList 的 keyExtractor 中被调用。但是,虽然 getKey 中的 console.log 返回正确的值,但 keyExtractor 是未定义的。我不明白这一点-两者不应该返回完全相同的结果吗?

【问题讨论】:

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


    【解决方案1】:

    该函数实际上并未返回密钥。虽然快照返回键,但函数本身实际上并没有返回任何内容。我通过将代码更改为来解决此问题

    getKey = (index) => {
        let key = 0;
          offersRef.on('value', snapshot => {
            let data = snapshot.val();
            key = Object.keys(data)[index]
          })
          return key
      }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-05
      • 1970-01-01
      • 1970-01-01
      • 2021-04-28
      • 2018-05-04
      • 1970-01-01
      • 1970-01-01
      • 2020-04-08
      相关资源
      最近更新 更多