리액트로 코로나 사이트 만드는 중인데
api데이터에 어떻게 접근함?
item에 있는 데이터에 접근하려는거
item안에 있는 데이터에 접근하고 싶은데 이거 어떻게 하냐...
const MainList = () => {
const [items, setItems] = useState(null);
const [loading, setLoading] = useState(false);
useEffect(() => {
const fetchData = async () => {
setLoading(true);
try {
const response = await axios.get(
'http://openapi.data.go.kr/openapi/service/rest/Covid19/getCovid19InfStateJson?serviceKey=MCOPjJc8P6GG3tLEXY0HTl%2FOzFqj%2BiStMV8aQ4FnL25TCt20be%2BpYIH%2FPQNlfUQyUOtMSxOgSoSA%2BS245I9n%2Fg%3D%3D&pageNo=1&numOfRows=10&startCreateDt=20200310&endCreateDt=20200310&_type=json',
);
setItems(response.data);
} catch (e) {
console.log(e);
}
setLoading(false);
};
fetchData();
}, []);
//대기중일때
if (loading) {
return <MainListBlock>대기중 ...</MainListBlock>;
}
//아직 items 값이 설정되지 않았을때
if (!items) {
return null;
}
//items값이 유효할때
return (
<ul>
{items.map((item) => (
<li key={item.stateDt}>{item.decideCnt}</li>
))}
</ul>
);
};
일단 이렇게 접근하고있는데 안돼... items가 없다고 나옴 ..
리액트 고수들이 좀 도와줘 ㅠㅠ
스트링으로 넘어와서 그런거아님?
items가 배열이 아닌건?
요건데
response.body.items