인프런 커뮤니티 질문&답변

vuetiful님의 프로필 이미지
vuetiful

작성한 질문수

Vue3 완벽 마스터: 기초부터 실전까지 - "실전편"

네비게이션 가드 및 플러그인 관련 질문입니다.

해결된 질문

작성

·

308

·

수정됨

0

안녕하세요.

강의 매우 잘 듣고 있습니다. 감사합니다.

수강 중 질문이 있는데요.

1.실전편, 네비게이션 가드 설명 중

beforeEnter: [removeQueryString],

위와 같이 beforeEnter를 배열로 연결해서 여러개의 가드를 연결할 수 있는 것 같은데,

이렇게 배열로 연결할 수 있는 이유는 무엇인가요? 하나의 메서드만 연결할 수 있을 것 같은데 말이죠...

 2. 플러그인 기능을 활용한 글로벌 컴포넌트 생성 중 unplugin-vue-components 에 대해 소개해 주셨는데 혹시 이 모듈은 실제 프로젝트에서 사용해도 될 만큼 안정성이 있는 것인지 궁금합니다.

감사합니다.

답변 1

0

짐코딩님의 프로필 이미지
짐코딩
지식공유자

안녕하세요 🙂

  1. 여러개의 함수를 전달하여 실행할 수도 있습니다.

    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())를 재사용할 때 유용합니다.
    공식문서 참고링크

  2. 저도 아직 운영환경에 적용은 안해봤어요. 하지만 개인 프로젝트를 할 때 혼자서 하다보니 상용구 하나라도 줄이고 싶다고 절실히 느낄때가 있어서요. 개인 프로젝트에 적용해보려고 고려하고 있습니다. (눈여겨 보고 있는 플러그인 이에요 👀)

 

 

vuetiful님의 프로필 이미지
vuetiful

작성한 질문수

질문하기