반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 댓글달기
- 쉬운설명
- v-html
- react
- webpack
- HOC
- ES6
- event
- TypeScript
- input
- State
- Vue transition
- CSS
- App.vue
- 자바스크립트
- nodejs
- 자료구조
- jsx
- express
- Vue.js
- Vue
- MySQL
- Wecode
- 리액트
- scss
- mapGetters
- JavaScript
- sass
- storybook
- vuex
Archives
- Today
- Total
익명의 개발노트
[vue.js] global 컴포넌트 특정 라우트 컴포넌트에서 안보이게 처리 본문
반응형
위와 같이 통상 하단부 네이게이션 바를 특정 컴포넌트에서 안보이게 하고 싶을 때 처리하는 방법.
글로벌로 보이게 처리하려면 app.vue에서 등록을 해주면 어떤 라우터를 타고 들어가든 해당 컴포넌트를 볼 수 가 있다.
특정 컴포넌트에서 안보이게 처리는 어떻게 할까?
//app.vue
<template>
<div id="app">
<router-view></router-view>
<footer-navigation-bar v-if="!isChecked"></footer-navigation-bar>
</div>
</template>
<script lang="ts">
import { Component, Vue } from 'vue-property-decorator';
import FooterNavigationBar from '@/components/shared/FooterNavigationBar.vue';
@Component({
components: {
FooterNavigationBar,
}
})
export default class App extends Vue {
isChecked: boolean = false;
created(){
if(document.location.pathname === '/email-check'){
this.isChecked = true;
}
}
}
</script>
App.vue 컴포넌트에서 특정 url일때, 해당 컴포넌트를 안보여주면 된다.
위 소스 코드 처럼, 라이프싸이클 부분에서 url을 파싱하여, 해당 url일때 v-if를 통한 분기처리를 해주면 해결된다.
반응형
'코딩일기 > TIL' 카테고리의 다른 글
[vue.js] typesctipt for문을 이용한 tab기능 구현 (1) | 2020.02.12 |
---|---|
[vue.js] vuex 상태변화시 리랜더링 안되는 현상(강제 리랜더링) (0) | 2020.01.29 |
[vue.js] 모달창 메세지 두 줄 구현하기 (0) | 2020.01.21 |
[javascript] 값 존재 유무를 확인시에는 includes를 사용해라. (0) | 2020.01.10 |
[typescript] !, ? (0) | 2020.01.09 |
Comments