프론트엔드 정복하기
Vue Component 본문
위와 같은 탬플릿이 있다. 노트북 카드를 구성하는 html은 다음과 같을 것이다.
<div>
<img src="..."/>
<div class="avatar"></div>
<h2>노트북</h2>
<p class="detail">상세설명</p>
</div>
위와 같은 카드를 여러 개 만들기 위해서는 위 코드를 복사 한 후, 각 태그의 내용들을 각각의 제품에 맞는 정보로 수정할 것이다.
Vue Component 메소드는 위의 과정을 간단하게 가능하게 해준다. vue로 Component를 정의해주고 Component로 정의된 <태그>를 나열 및 작성하면 된다.
Vue.component('태그명', {
설정값 (json 형식)
})
1) component 설정하기
<script>
Vue.component('product',{
props:['image', 'title', 'description', 'avatar'],
template:
`
<div class="template">
<img class="productImg" :src="image"/>
<div>
<div>
<img :src="avatar"/>
avatar
</div>
<div> {{ title }} </div>
<p> {{ description }} </p>
</div>
</div>
`
})
</script>
props : 외부에서 attribute(속성) 값으로 입력받을 항목들을 props 안에 배열로 넣어준다.
template : 상품을 표현할 html 태그들을 ` ` 안에 넣어준다.
2) component 태그 작성하기
<div>
<product
image="../../..."
avatar="../../..."
title="노트북"
description="노트북 상세 설명"
></product>
<product
image="../../..."
avatar="../../..."
title="아이폰"
description="아이폰 상세 설명"
></product>
...
</div>
'Vue > Vue 레시피 basic강의' 카테고리의 다른 글
Vue 메소드 정의 및 이벤트 핸들러 (0) | 2020.10.10 |
---|---|
Vue list 출력하기(v-for, template) (0) | 2020.10.10 |
Vue 데이터 바인딩(기본, attribue, 배열, class) (0) | 2020.10.10 |
vue 설치 및 렌더링 (0) | 2020.10.10 |