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 |
Tags
- Chart.js
- vue.js
- returnType
- javascript
- 커스텀
- utilty type
- JS console
- CSS
- React Native
- 2022
- 제네릭
- 개발콘텐츠
- 성능최적화
- 공통컴포넌트
- 레이아웃쪼개기
- React.js
- 리액트
- 타입스크립트
- 타입좁히기
- 폰트적용하기
- 티스토리꾸미기
- const 단언문
- TSDoc
- click and drag
- reactjs
- typescript
- react
- 누구나 자료구조와 알고리즘
- 반복줄이기
- NonNullable
Archives
- Today
- Total
몽땅뚝딱 개발자
[Vue.js] 빌트인 컴포넌트 - component와 is 본문
Vue의 Built-In Components
◽ component
이 컴포넌트는 Build-In Component로 동적 컴포넌트를 렌더링 하기 위한 '메타 컴포넌트'라고 한다.
렌더링 할 실제 컴포넌트는 is prop에 의해 결정된다.
◽ is 속성
is 속성에는 문자열이나 컴포넌트 이름을 넣는다.
◽ 예제
<!-- is 속성에 해당되는 컴포넌트가 렌더링된다. -->
<component :is="componentId"></component>
<!-- 동적 컴포넌트는 등록된 컴포넌트나 prop로 전달된 컴포넌트를 렌더힝 할 수 있다. -->
<component :is="$options.components.child"></component>
<!-- 동적 컴포넌트는 문자열로 컴포넌트를 참조할 수 있다. -->
<component :is="condition ? 'HeaderComp' : 'FooterComp'"></component>
<!-- 동적 컴포넌트는 네이티브 HTML 엘리먼트를 렌더링 할 수도 있다. -->
<component :is="href ? 'a' : 'span'"></component>
◽ keep-alive를 사용하는 동적 컴포넌트
is 속성을 사용하는 경우 다시 돌아왔을 때 계속해서 재렌더링 되어 기존의 클릭값이나 기존 데이터가 유지되지 않는다.
그래서 처음 생성된 컴포넌트 인스턴스가 캐시되기를 원하는 경우에 <keep-alive> 엘리먼트로 감싼다.
<keep-alive>
<component :is="cntComponent"></component>
</keep-alive>
출처
https://v3.ko.vuejs.org/api/built-in-components.html#component
개인적으로 공부한 내용을 정리하는 블로그로
잘못된 개념을 게시하지않도록 주의하고 있으나 오류가 있을 수 있습니다.
'Development > Vue.js' 카테고리의 다른 글
[Vue.js] 인스턴스 속성(Instance Properties) (0) | 2021.12.20 |
---|---|
[Vue.js] axios의 interceptors (0) | 2021.12.20 |
[Vue.js] $nextTick (0) | 2021.12.19 |
[Vue.js/라이브러리] deepmerge (0) | 2021.12.18 |
[Vue.js] v-if와 v-show의 차이 (0) | 2021.12.09 |
Comments