현재 유저 프로필 사진 혹은 닉네임을 변경할 경우에, 유저가 이전에 작성했던 게시글과 댓글에서 보이는 유저의 프로필 사진과 닉네임은 변경하는 로직을 구현하지 않았다.
그 이유는... 이제 express가 아니라 spring boot에서는 유저 정보만 수정이 된다면 userId로 게시글과 댓글을 join하면 잘 반영이 될 것이기 때문이다!
하지만 지금은... posts와 comments 데이터에 유저 이미지와 유저 닉네임, 유저 아이디를 저장했기 때문에 일일히 정보를 수정해줘야 한다...! ㅜ

이렇게 회원정보를 수정해도 게시글의 이미지는 바뀌지 않는다ㅜㅜ
구현해야 할 로직은 다음과 같다.
유저가 작성한 게시글(혹은 댓글) 인덱스를 찾고, 그 인덱스에 해당하는 게시글(혹은 댓글)의 정보를 수정하는 것으로 로직을 구현했다.
여기서 특정 값에 해당하는 모든 요소의 인덱스를 찾을 수 있는 배열의 내장 method가 있는지 확인을 했으나, 아쉽게도 찾지 못한건지 없는건지 사용을 못했다.
따라서 직접 모든 인덱스를 구하는 로직을 짰다.
Array.prototype.forEach를 통해, 만족하는 것의 index로 게시글(혹은 댓글) 배열 속 정보를 수정으로 구현을 했다.
코드는 다음과 같다.
//유저가 작성한 글 유저이미지, 닉네임 수정
posts.forEach((post, index) => {
if (post.userId === userId) {
posts[index].nickname = nickname
posts[index].userImage = profile_image
}
})
//유저가 작성한 댓글 유저이미지, 닉네임 수정
comments.forEach((comment, index) => {
if (comment.userId === userId) {
comments[index].nickname = nickname
comments[index].profile_image = profile_image
}
})
이렇게 한다면 유저 정보를 수정할 때, 같이 게시글과 댓글 속 유저 이미지와 닉네임이 수정된다.
만약 위와 같이 코드를 작성할 경우, posts나 comments의 길이가 길어질 수록 비효율적일 것이라고 생각한다.
그 이유는 모든 게시글(혹은 댓글)을 하나하나씩 조건에 만족하는지 검사하고, 수정을 하기 때문이다.
공부를 더 하고 리팩토링으로 효율성을 높여보도록 하겠다.