我有一个使用React和Firebase构建的应用程序,而我只是做了一个搜索组件。
因此,我将从数据库中获取帖子,并将所有帖子放入一个存储为状态的数组中。然后,我将该状态与搜索组件一起使用(来自语义UI React)。它可以工作,它搜索数组并基于“ createdBy”字段返回结果,但是当我尝试仅从中获取字段时,它不再显示任何内容。
如何仅显示“ message”和“ createdBy”字段?如果数据库位于Firebase中,还是有一个更好的搜索组件流程?
如您所见,我将结果保存在状态中,并且可以使用JSON字符串化显示这些结果,但是例如当我尝试使用'results.message'时,该方法将不起作用。
请给我一些帮助吗? 谢谢
答案 0 :(得分:1)
由于结果是一个数组,因此您需要对其执行.map或.forEach才能访问每个对象及其键和值
results.map( result => {
console.log(result.message);
console.log(result.uid);
console.log(result.createdBy);
}
或使用.forEach
results.forEach( result => {
console.log(result.message);
console.log(result.uid);
console.log(result.createdBy);
}
如果您只想访问数组中的第一个对象,则
console.log(results[0].message);
console.log(results[0].uid);
console.log(results[0].createdBy);