问题描述
我正在尝试使用react-native-leaderboard(https://www.npmjs.com/package/react-native-leaderboard)来显示一个简单的“高分”区域,其中包含团队名称及其各自的分数。团队名称和相关分数存储在Firestore中。
我的数据库结构如下: database structure link
我需要以以下格式返回名称和高分数据,其中值是每个团队名称的字段,每个团队名称是一个文档。如何从Firestore以特定格式或从概念上以这种格式获取此信息?还是用正确的词/搜索词来描述我要做什么?
//...import leaderboard from 'react-native-leaderboard';//...this.state = {data: [
{name: 'David',highscore: 52},{name: 'Jenny',highscore: 120},`
//...
] //can also be an object of objects!: data: {a:{},b:{}}
}
解决方法
您可以像这样从firebase那里获得
:const unsubscribe = firebase.firestore().collection("HigeScores").get().then((snap) =>{
const datas = [];
snap.forEach((doc) =>{
datas.push({name: doc.data().name,highScore: doc.data().highScore})
})
this.setState({data: datas})
//or you can use useState like const [data,setData] = useState([]); then setData(datas)
})