router.push 질문
699
작성한 질문수 14
<div @click="$router.push('/pages/profile').catch(() => {})"> </div>
라는 코드가 있는데요.
그럼 어떤 것을 클릭 했을 때 /pages/profile로 넘어 가라고 했는데 여기서 catch(() => {})로 에러 핸들링을 하는데 catch 파라미터로 인자도 안들어가 있는데 이건 잘못된건가요??
아니면 저렇게 catch(() => {}); 이렇게만 적어 놔도 어떤 것을 클릭했을 때 /pages/profile 넘어가지 않으면 에러를 표시해주나요???
답변 1
0
안녕하세요 my-way님, 뷰 템플릿 표현식에 간단한 자바스크립트 표현식을 쓰는 것은 허용이 됩니다. 그 이유는 "hello world"를 "camelize('hello world')"를 한다든지 "str.split('').reverse().join('')" 등의 간단한 연산을 지원해서 개발자들이 화면에 더 다양한 방식으로 데이터를 표현할 수 있게 라이브러리가 제공되고 있기 때문입니다 :)
결론적으로, 위와 같이 특정 로직에 대한 분기 처리는 메서드에서 아래와 같이 처리하는 게 좋습니다.
<div @click="routeSomePage">
methods: {
routeSomePage() {
$router.push('/pages/profile').catch(() => {})
}
}
그리고 라우터의 push() API의 호출 결과가 프로미스가 아니라 `catch()`는 동작하지 않을겁니다. 아래 문서 한번 확인해보세요 :)
https://router.vuejs.org/guide/essentials/navigation.html#router-push-location-oncomplete-onabort
node 10버전 사용
0
65
1
강의에 대해 질문 드립니다.
0
61
1
vue CLI 대신 vite를 사용해도
1
140
2
질문삭제
0
149
2
강사님 코드로 진행할 경우 console.log( config); 도 안찍혔어요. instance 를 생성해서 공통으로 사용하셨는데 loginUser 에만 커스텀한 instance를 넣으니 콘솔에 컨피그 객체가 찍혀요
0
92
1
로그인 에러발생만하면 네트워크 커넥션 에러 발생 해결
0
117
1
rndrmagkqslek.
0
73
1
계속 따라하다가 안돼서 bash에 연결할떄 안되더라구요
0
104
1
axios 에러가 뜹니다.
1
237
2
vue3로 진행하시면서 router에서 '*' 적용이 안되시는 분들
2
312
1
vue 관련 다른 강의 출시예정이없으신지 궁금합니다!
1
154
1
AppHeader.vue에 vue 디폴트 만들에 Delete `␍` 오류나면
1
195
1
vue3로 따라오시다가 import axios 에러 뜨시는 분들
2
445
2
$router 를 이용한 메인 페이지로 이동
1
291
1
혹시 node.js 10.24 버전으로 해도 상관없나요?
2
461
2
에러 경로가 LoginForm.vue 43번째줄 말고 다른 경로로 출력됩니다.
1
299
2
pinia 사용할려고 하는데 에러가 나옵니다.
1
486
2
swagger ui의 post/posts에 글 기록하려고 하면 unauthorized 에러가 납니다..
1
1104
2
safari 개발자 도구에 대한 질문입니다
1
570
2
스웨거에 글 등록시 401 에러가 나와요 ㅠ
1
722
2
이 에러 때문에 진행이 안되네요 ㅠ
1
675
1
windows .nvmrc nvm use 실행 오류
1
1547
2
강사님 최신화가 필요해보입니다.
2
960
2
npm i 에러
1
613
1





