Notice
Recent Posts
Recent Comments
Link
반응형
이로
Vue3 Composition API / Options API 란? 본문
반응형
vue의 컴포넌트 로직 구성 방식
vue의 컴포넌트 로직 구성방식으로 Vue의 컴포넌트에서 데이터, 메서드, 계산된 속성 등의 기능들을 어떻게 조직하고 관리할지 정의하는 방식입니다. Composition API 와 Options API 두 가지 방식이 있습니다.
Composition API란?
주요 특징
- setup() 함수 내에서 컴포넌트 로직 정의
- ref(), reactive()로 반응형 상태 생성
- computed, watch로 파생 상태 관리
- 생명주기 훅 사용 (onMounted, onUnmounted 등)
- <script setup> - (Script setup syntax 또는 Composition API With <script setup>) 방식과 setup() - (Option-style Composition API) 함수 방식 두가지로 사용할 수 있다.
장점
- 대규모 애플리케이션에서 코드 구성이 용이
- 로직 재사용이 편리 (composables)
- 더 나은 타입 추론
- 번들 크기 최적화 가능
- TypeScript 지원이 우수
- 코드 재사용성이 높음
- 보일러플레이트 코드 감소
- 논리적으로 연관된 코드를 함께 그룹화 가능
단점
- 학습 곡선이 높음
- React 스타일에 익숙해야 함
- 작은 컴포넌트에선 오히려 복잡할 수 있음
사용 추천 케이스
- 대규모/복잡한 애플리케이션
- TypeScript 사용 시
- 로직 재사용이 많은 경우
- 성능 최적화가 중요한 경우
case1) Option-style Composition API
import { ref, computed } from 'vue'
export default {
setup() {
const count = ref(0)
const doubleCount = computed(() => count.value * 2)
function increment() {
count.value++
}
return {
count,
doubleCount,
increment
}
}
}
case2) Composition API With script
<script setup>
import { ref } from 'vue'
const count = ref(0)
const increment = () => count.value++
</script>
Options API 란?
주요특징
- Vue2 스타일의 전통적인 방식
- this로 속성 접근
- 옵션별로 코드 구성
장점
- 초보자가 이해하기 쉬움
- 직관적인 코드 구조
- 작은 컴포넌트에 적합
- Vue2에서 마이그레이션이 쉬움
단점
- 큰 컴포넌트에서 코드가 분산됨
- TypeScript 지원이 상대적으로 부족
- 로직 재사용이 어려움
사용 추천 케이스
- 소규모/단순한 애플리케이션
- Vue 입문자
- Vue2에서 마이그레이션 시
- 빠른 프로토타이핑
export default {
data() {
return {
count: 0
}
},
computed: {
doubleCount() {
return this.count * 2
}
},
methods: {
increment() {
this.count++
}
}
}
반응형
'컴퓨터 > Vue' 카테고리의 다른 글
vue3 Reactivity API란? (0) | 2024.12.03 |
---|---|
Vue3 상태관리도구 pinia / vuex / 등.. (1) | 2024.12.02 |
Vue3의 빌드 도구란? 모듈 번들러란? 왜 vite를 사용하는가? (3) | 2024.11.28 |
Vue3, vite 정적, 동적 sitemap , sitemap.xml 생성하기 (0) | 2024.11.25 |
Comments