试图获取超出范围索引NaN的帧(实时数据库) [英] Tried to get frame for out of range index NaN (realtime database)
问题描述
我正在尝试从Firebase数据库呈现一些行,但出现此错误:
I'm trying to render some rows from firebase database, I'm getting this error:
TaskQueue:任务出错:永久违反:试图获取框架 超出范围指数NaN
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.
I came across this error, I had a PHP back-end and trying to get json_encoded data into a FlatList.
问题::REST端点正在返回一个对象,例如
Problem: The REST endpoint was returning an object eg
{"Total_Excavator":2,"Active_Excavator":2,"Total_load":6804}
解决方案:修复了它返回数组的问题,例如
Solution: Fixed it to return an array rather eg
[{"Total_Excavator":2,"Active_Excavator":2,"Total_load":6804}]
记下方括号.
我用$data[] = json_encode($excavatorArray)
代替
$data = json_encode($excavatorArray)
.希望有一天能对某人有所帮助
Take note of the Square Brackets.
I used $data[] = json_encode($excavatorArray)
instead of
$data = json_encode($excavatorArray)
. Hope it helps someone one day
这篇关于试图获取超出范围索引NaN的帧(实时数据库)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!