작성
·
123
0
안녕하세요.
const {me} = useSelector(state => state.user)
const profiles = me?.profiles
위처럼 옵셔널 체이닝을 했다고 가정했을 때
profiles[0]?.Images[0]?.src
profiles 를 이용할 때도 위 그림처럼 그 뒤에 계속 옵셔널 체이닝을 해줘야 하나요?
한번 오류가 떴던 적이 있었던 것 같은데 이게 두번째 그림처럼 안해줘서 그런건지 다른 이유인지 몰라서
그냥 무조건 계속 붙이고 있는데 잘 모르겠습니다 ..
할 필요는 없는 건가요?
답변 1
1
확실히 있는걸 장담할 수 있으면 뗄 수 있습니다. 다만 긴가민가한다면 붙여야겠죠. 그리고 Images[0] 이것도 Images가 undefined면 에러가 납니다. 그래서 Images?.[0] 이렇게 해야합니다.
추가 질문이 생겼는데, 저렇게 옵셔널 체이닝이 된 상태면 undefined 라도 데이터가 다 불러와지면
다시 리랜더링이 되면서 채워지기때문에 오류가 뜨지 않는 걸로 이해하면 될까요?