인프런 커뮤니티 질문&답변
movieimage가 안뜨네요...
작성
·
416
8
{Movies && Movies.map((movie, index) => (
<React.Fragment key={index}>
<GridCards
image={movie.poster_path ?
`${IMAGE_BASE_URL}w500${movie.poster_path}` : null}
movieId={movie.id}
movieName={movie.original_title}
/>
</React.Fragment>
))}
이거의 결과값이 계속 null값이 뜹니다.. 이유가 뭘까요 ㅠ <Col lg={6} md={8} xs={24}>
<div style={{position:'relative'}}>
<a href={`/movie/${props.movieId}`}>
<img style={{width:'100%',height:'320px'}} src={props.image} alt={props.movieName}/>
</a>
</div>
</Col>
답변 5
6
5
rlaalsrb3559
질문자
setMovies([response.result])를
|
setMovies([...Movies, ...response.results]) 로 변경 해주었더니 해결되었습니다. 혹시 이둘의 차이가 뭔지 알수 있을가요?? 불변성 유지해주려고 전개연산자를 쓴건가요?? |
4
John Ahn
지식공유자
setMovies([ a , b ])
a = 현재 가지고있는 Movies들 (하지만 ... 전개 연산자를 사용하여 직접 state을 건들지 않고있지요 ~ )
b = b에서의 ...을 사용했을때는 object 들이 여러개입니다

, 하지만 ...없이 사용하면 Array안에 Object 들이 들어있어서 이미
![]()
a, b 를 [] Array가 감싸고 있기에 올바른 형식이 아닙니다 ^^
0
setMovies(...[response.results])는 의미가 없는거 같습니다.
results가 영화 객체들을 담은 배열인데, 배열을 배열에 담고 펼치는 동작이라 response.results와 차이가 없습니다. 그냥 setMovies(response.results)가 맞는것 같아요.
0





