안녕하세요,
뷰스타그램에서 사진을 클릭하면 like +1, -1 기능을 구현하는 과제를 하다, 기능은 구현하였지만, 도대체 왜 이게 되는지 이해되지 않아 질문드립니다.
현재 Post 컴포넌트 내 이미지를 클릭하면 store.js의 mutations 중 updateLikes를 실행하고, payload로는 props인 data 즉, 해당 게시물 한 개에 대한 정보가 store.js 로 넘어가게 됩니다.
store.js의 mutations의 updateLikes 함수는 state를 참고하지도 않으며, (현재 vuex 를 연습 중이라, 약간 억지로 vuex를 활용하고 있습니다.) payload로 넘어온 data의 likes와 liked 속성만 바꿔 주고 있습니다.
즉, 어떤 state도 현재 건들리지 않아 당연히 리렌더링이 되지 않을 것이라 예상했지만, 예상외로 리렌더링이 정상적으로 진행되는 것을 확인하였습니다. 분명 post 컴포넌트의 data는 state가 아닌 props임에도 리렌더링이 되어 약간 혼란스럽습니다.
(props가 변경되어도 리렌더링이 되나 찾아보았지만 따로 computed 설정을 해주지 않는이상 리렌더링이 되지 않는 다는 글도 찾아 보았습니다.)
감사합니다.

