삭제 후 홈으로 돌아가는 코드 관련 질문
안녕하세요, "delete로 글 삭제하기" 강의를 듣던 중 궁금한 점이 생겨 질문드립니다.
삭제 후 다시 supabase에서 글 목록을 조회하고, 조회한 글들로 홈 화면의 게시글 목록을 구성하기 위해 goto 대신 location.reload() 함수를 사용하신 내용을 이해했는데요,
홈 화면에서 삭제하는 경우가 아닌 글 조회 후 /read/{diary_id} 경로에서 삭제 버튼을 누르게 되면 해당 경로에서 reload가 되기 때문에 문제가 발생하지 않나요?
따라서 말씀하신 location.reload() 대신 location.href = '/' 만 사용할 수 있는것이 아닌지 여쭤봅니다,
감사합니다!
回答 2
0
시간이 좀 지났긴했지만..
// 홈에서 삭제할 때 페이지 데이터 새로고침
if ($page.url.pathname === '/') {
await invalidateAll();
} else {
goto('/');
}invalidateAll()을 호출하면 사용자 경험이 좀 더 우수합니다.
홈의 +page.server.js만 리로드 한다고 생각하시면 될거에욤 ㅎㅎ
0
안녕하세요, 인프런 AI 인턴입니다. antk7894님.
삭제 후 페이지 경로 문제에 대한 질문을 해주셨네요. 강의에서 언급된 location.reload()와 goto 사용에 대해 혼란스러우신 것 같습니다.
location.reload()는 현재 페이지를 새로고침하는 함수로, 사용 시 현재 보고 있는 페이지의 데이터를 갱신할 수 있습니다. 즉, /read/{diary_id} 경로에서 글을 삭제한 후 새로고침을 하게 된다면, 삭제된 글의 상세 페이지를 다시 불러오게 되므로 문제가 될 수 있습니다. 따라서, 모든 경로에서 적용하기에는 적절하지 않을 수 있습니다.
반면에 location.href = '/'는 루트 경로로 직접 이동하도록 해주는 코드입니다. 따라서 글을 삭제한 후 특정 페이지(예: 홈 화면)로 사용자 경로를 변경하고 싶다면 이 방법이 더 적합할 수 있습니다.
적절한 것은 상황에 따라 다르겠지만, 일반적으로 삭제 후 홈 화면으로 돌아가고자 한다면 location.href = '/'를 쓰는 것이 논리적으로 명확할 수 있습니다.
관련하여 더 많은 예제를 원하신다면, 아래의 답변도 참고하실 수 있습니다:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
1
네, 맞습니다!
글 삭제 후 해당 글이 없어지면 edit 페이지를 찾을 수 없어서 에러가 발생하는게 맞습니다. 삭제 후에는 home 페이지로 리다이렉트 해야 합니다. 삭제 작업이 완료된 후 home으로 이동하도록 하면 문제를 방지할 수 있습니다.
버튼 컴포넌트에서 현재 페이지 새로고침(reload)이 아닌 goto('/')로 홈(글목록)으로 이동시켜 주세요. 그럼 500에러는 사라질 겁니다.
참고로 goto는 svelte 라우터 함수이고 말씀하신 location.href = '/' 를 써도 됩니다.
<button
class="btn"
on:click={
async () => {
await deleteDiary(diary.id);
goto('/'); // 삭제 후 홈 이동
// location.reload(); // 페이지 새로고침
}
}
>
수강생 분과 소통하니 강의가 더욱 흥미로워 지네요!
감사드립니다~
타입 에러 관련 질문입니다.
1
13
1
마지막 강의 잘림
0
33
0
포스트 작성 중 이탈 방지 기능 (취소 버튼 클릭 시 오류)
0
53
2
"포스트 생성에 실패했습니다" 실패 문구와 함께 에러가 발생합니다ㅠㅠ
0
55
2
플러터 세팅 후 새폴더 생성건
0
49
2
강의 자료는 어디있나요?
0
37
1
supabase mcp로 테이블 생성 보여주실떄
0
50
2
강의자료는 어떻게 제작하시나요?
0
64
2
비밀번호 재설정 1회용 이메일 링크
0
60
1
강의 수강 후 포트폴리오 준비 방향에 대해 조언 부탁드립니다.
2
74
1
cursor ai가 업데이트 되서 ui가 바뀌었는데 반영은 안될까요?
0
61
2
25강 앱 아이콘 만드는 방법에서 그래픽 소스는 어디에 있나요?
0
49
1
회원가입 구현 (구현 후 최종 화면 출력 X)
0
93
2
(6.11) 회원가입시 프로필 정보 자동 생성하기 Q. 호출 순서 문의
0
66
1
수파베이스 ORM 질문
0
81
2
트리거 질문
0
67
1
화면 구성 설명용 도구 이름
0
171
1
영호 좋아요 버튼이 콘솔에는 잘 찍히지만 화면에 렌더링 되지 않습니다.
0
158
2
영화목록 component 만들기 에서 질문이 있습니다.
0
238
3
"hello".toUpperCase() 가 안되는데요.
0
157
1
날짜 포매팅 관련 질문
0
145
1
OnDestroy() 위치 질문
0
163
1
$(리액티브선언문) 으로 setInterval과 clearInterval 를 작성 시 메모리 관련
1
237
1
스벨트킷에 대해서 질문이 있습니다.
0
366
1

