반응형
SMALL
특정 컴포넌트 비활성화 방법
1. router /index.js 에서 등록한 라우터
// 메인 페이지 라우터
{
path: '/main',
name: 'main',
component: Main,
beforeEnter: (to, from, next) => {
if (!localStorage.getItem('memId')) {
next('')
}
next()
}
},
해당 라우트 name 값이 " main " 인 라우터만 제외하고 TopMenu Component가 나타난다.
template>
<div>
<TopMenu v-if="$route.name !== 'main'"></TopMenu>
<router-view />
</div>
</template>
<script>
import TopMenu from './components/TopMenu.vue'
export default {
name: 'app',
components: {
// 가져온 component 들을 등록합니다.
TopMenu
}
}
</script>
1. router /index.js 에서 등록한 특정 라우터만 출력
<template>
<div>
<TopMenu v-if="visiableRouter.includes($route.name)"></TopMenu>
<router-view />
</div>
</template>
<script>
import TopMenu from './components/TopMenu.vue'
export default {
data: () => ({
visiableRouter: ['main']
}),
name: 'app',
components: {
// 가져온 component 들을 등록합니다.
TopMenu
}
}
</script>
라우터 name 값이 main에 포함된 경우에만 TopMenu Component가 나타난다.
visiableRouter: ['main'] <-- 여기에 활성화할 라우터를 등록한다.
'Vue.js' 카테고리의 다른 글
Vue.js - Vue.js에서 배열을 문자열로 바꾸는 방법 (0) | 2023.03.02 |
---|---|
Vue.js - vuex - store - 상태관리법 등 개념/사용법 (0) | 2023.02.24 |
Vue.js 3 - Proxy 설정 (0) | 2023.02.21 |
Vue - 네비게이션 가드 (0) | 2023.01.13 |
Vue3.js - 로컬스토리지 사용(localStorage) (0) | 2023.01.13 |
댓글