안녕하세여 리액트 + 파이어베이스를 연결하고 데이터를 받아오는 공부를 하고있습니다
function App() {
const [baseData,setbaseData] = useState([])
useEffect(()=>{
readData();
},[])
const readData = async()=>{
//async function readData() {
const response = db.collection("product");
const data = await response.get();
data.docs.forEach(item=>{
setbaseData([item.data()])
})
}
코드는 이런데요 콘솔 찍어보니까

이렇게 나오는데 각각 다른 array가 아닌 0다음 1 이렇게 같이 나오게 할려고 하는데 뭘 잘못한걸까요?
|
답변 2개 / 댓글 2개
채택된 답변
+20 포인트
2021-07-10 (토) 16:52:26
setbaseData([...setbaseData,item.data()])
를 foreach문안에 넣으세요.
오! 저두 리액트 공부하는데~
답변에 대한 댓글 2개
2021-07-10 (토) 20:40:33
리액트!!! 진짜 자스 중급까지 알아야되서.. 뷰랑 너무 다르더군요.. 자스 응용을 잘 알아야되네요..
답변을 작성하려면 로그인이 필요합니다.