繁体   English   中英

如何在 react-native 中检索 firebase 数据

[英]how to retrieve firebase data in react-native

我试图从 firebase 数据库中获取数据,我很好地获取了数据,但是当我尝试推送数组中接收到的所有项目时,我获得了一个数组,我无法像任何其他 javascript 数组一样迭代该数组。 这是我的代码:

var li = [];
  
  useEffect(() => {
    firebaseDB
      .database()
      .ref("collection")
      .on("value", (data) => {
        let all = data;
        
        all.forEach((element) => {
          
          li.push(element.val());
        });
      });
  }, []);
  console.log(li);

当我执行console.log(li)时,我得到了li数组,这对数据来说似乎没问题,但是当我尝试对数组执行某些操作时,例如如果我执行console.log(li.length) ,它会打印0但数组中有多个项目。 问题是我的li数组的行为不像数组。 请帮助我找出问题所在

你不能像那样推送数据。 试试这个代码。

    const [arr,setArr] = useState([]);
      

      useEffect(()=>{
      firebaseDB
      .database()
      .ref("collection")
      .on("value", (snapshot) =>{
        let data = [];
        snapshot.forEach((child)=>{
          data.push(child.val());
        })
       setArr(data);
      });
     
  },[])
   

使用 forEach 关键字进行迭代。 有用

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM