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
- 특약
- 코딩
- 변환
- 교보
- 자바스크립트
- 웹개발
- 중도인출
- 프론트엔드
- 인출수수료
- 교보생명
- 파이썬
- 심장질환
- 납입
- 보험
- 문자열
- 사망
- Vue.js
- javascript
- 보험료
- 급성심근경색증
- 프로그래밍
- 리스트
- jQuery
- 가입
- 추가납입
- 수수료
- Java
- PythonProgramming
- python
- 뇌출혈
Archives
- Today
- Total
SeouliteLab
[Vue.js] Vue 렌더링(render) 함수 이해하기 본문
예제
<template>
<div>
<h1>{{ greeting }}</h1>
<p>이름: {{ name }}</p>
<button @click="changeName">이름 변경</button>
</div>
</template>
<script>
export default {
data() {
return {
name: '홍길동',
greeting: '안녕하세요,'
};
},
methods: {
changeName() {
this.name = '이몽룡';
}
},
render(createElement) {
return createElement(
'div',
[
createElement('h1', this.greeting),
createElement('p', '이름: ' + this.name),
createElement('button', {
on: {
click: this.changeName
}
}, '이름 변경')
]
);
}
}
</script>
설명
- Vue.js에서
render
함수는 가상 DOM(Virtual DOM)을 생성하는 역할을 합니다. 이 함수는createElement
함수를 통해 가상 DOM 요소를 생성하고 이를 반환합니다. - 위 예제에서는
render
함수를 사용하여 템플릿(template) 대신에 가상 DOM을 생성하고 있습니다. 이를 통해 템플릿 대신에 JavaScript 코드로 직접 UI를 생성할 수 있습니다. createElement
함수는 첫 번째 인자로 요소의 태그 이름 또는 컴포넌트를 받고, 두 번째 인자로는 속성과 하위 요소들을 받습니다. 세 번째 이후의 인자는 해당 요소의 자식 요소들입니다.- 위 예제에서는
createElement
함수를 사용하여div
,h1
,p
,button
요소를 생성하고 있습니다. 각 요소에는 필요한 속성과 이벤트 핸들러를 설정하고 있습니다.
주요 특징
- 템플릿 대체:
render
함수를 사용하면 템플릿 대신에 JavaScript 코드로 직접 UI를 생성할 수 있습니다. - 동적 렌더링:
render
함수를 사용하면 조건부 렌더링과 반복 렌더링을 훨씬 더 유연하게 다룰 수 있습니다. - 코드 최적화: 가상 DOM을 직접 제어하므로 효율적인 코드를 작성할 수 있습니다.