해결된 질문
작성
·
308
·
수정됨
0
안녕하세요.
강의 매우 잘 듣고 있습니다. 감사합니다.
수강 중 질문이 있는데요.
1.실전편, 네비게이션 가드 설명 중
beforeEnter: [removeQueryString],
위와 같이 beforeEnter를 배열로 연결해서 여러개의 가드를 연결할 수 있는 것 같은데,
이렇게 배열로 연결할 수 있는 이유는 무엇인가요? 하나의 메서드만 연결할 수 있을 것 같은데 말이죠...
2. 플러그인 기능을 활용한 글로벌 컴포넌트 생성 중 unplugin-vue-components 에 대해 소개해 주셨는데 혹시 이 모듈은 실제 프로젝트에서 사용해도 될 만큼 안정성이 있는 것인지 궁금합니다.
감사합니다.
답변 1
0
안녕하세요 🙂
여러개의 함수를 전달하여 실행할 수도 있습니다.
function removeQueryParams(to) {
if (Object.keys(to.query).length)
return { path: to.path, query: {}, hash: to.hash }
}
function removeHash(to) {
if (to.hash) return { path: to.path, query: to.query, hash: '' }
}
const routes = [
{
path: '/users/:id',
component: UserDetails,
beforeEnter: [removeQueryParams, removeHash],
},
{
path: '/about',
component: UserDetails,
beforeEnter: [removeQueryParams],
},
]
이렇게 하면 다른 경로(ex: /users/:id,
/about
)에 가드(ex: removeQueryParams()
)를 재사용할 때 유용합니다.
공식문서 참고링크
저도 아직 운영환경에 적용은 안해봤어요. 하지만 개인 프로젝트를 할 때 혼자서 하다보니 상용구 하나라도 줄이고 싶다고 절실히 느낄때가 있어서요. 개인 프로젝트에 적용해보려고 고려하고 있습니다. (눈여겨 보고 있는 플러그인 이에요 👀)