채택완료

리액트 배열 출력 질문

2021-07-05 (월) 05:06:01 1,658

리액트 질문 있는데요 

지금 배열이 이렇게 있는데요 

프롭스로 데이터를 가져오고 있습니다.

{tags: Array(3)}

    1. tags: (3) ["집구경", "다이아몬드", "카이로"]
    2. __proto__: Object

keyword.js:5 {tags: Array(3)}
keyword.js:5 {tags: Array(1)}
keyword.js:5 {tags: null}
keyword.js:5 {tags: null}
keyword.js:5 {tags: null}

여기서 비워 있는것만 (null 인값만) 빼고  나머지 출력 하려 하는데 잘 안되네요

어떻게 해야할까요? 아래 소스로 짜여있습니다..

const Keyword = (tags) => {

return (

<>

<ul className="flex flex-wrap align-items-center">

{

Array.isArray(tags) ?

tags.map((item) => (<li>{item}</li>))

:

""

}

</ul>

</>

);

};

|

답변 1개 / 댓글 2개

채택된 답변
+20 포인트
Array.isArray(tags) 이거대신
(tags !== undefined || tags.length !== 0)
이렇게해도안되나요? 안되시면 map안에서 배열값체크 해보세요.

답변에 대한 댓글 2개

TypeError: tags.map is not a function
이런 에런 나옵니다..
구글링하다보니까 해결 방법을 찾았습니다~ 어쨌든 답변 채택 해드릴게요~ 고맙습니다.

답변을 작성하려면 로그인이 필요합니다.