我正在尝试从 firebase 数据库渲染一些行,但收到​​此错误:

TaskQueue: Error with task : Invariant Violation: Tried to get frame for out of range index NaN

  const { currentUser } = firebase.auth(); 
    var userfavorites = firebase.database().ref(`/users/${currentUser.uid}/favorites/`); 
    userfavorites.once('value').then(snapshot => { 
      this.setState({ userfav: snapshot.val() }) 
    }) 
 
... 
 
  <FlatList 
    data={this.state.userfav} 
    renderItem={({ item }) => ( 
      <Text>{item.favdata}</Text> 
    )} 
  /> 

请您参考如下方法:

我遇到了这个错误,我有一个 PHP 后端并试图将 json_encoded 数据获取到 FlatList 中。

问题: REST 端点返回一个对象,例如

{"Total_Excavator":2,"Active_Excavator":2,"Total_load":6804}

解决方案:修复它以返回一个数组,而不是例如

[{"Total_Excavator":2,"Active_Excavator":2,"Total_load":6804}] 

记下方括号。 我使用 $data[] = json_encode($excavatorArray) 而不是 $data = json_encode($excavatorArray) 。希望有一天它能帮助别人


评论关闭
IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!