개발 관련 모음/Vue
v-model과 v-bind 의 차이점
mini 아카이브 사서
2025. 3. 4. 14:04
반응형
Vue를 개발하다 보면 v-model과 v-bind 의 차이점을 생각할 때가 많이 있습니다.
아주 간단하게 이야기를 하면
v-model은 양방향 데이터 바인딩을 제공해. 입력값이 실시간으로 연결해줘
(v-model은 내부적으로 :value와 @input을 결합한 syntactic sugar(문법적 편의) )
v-bind (축약형: :)는 HTML 속성에 Vue 데이터를 단방향으로 연결해줘
예제는 다음과 같습니다.
model 기준 아주 간단하다.
<input v-model="message" />
model기준 보다 복잡하다.
<input :value="message" @input="updateMessage" />
자바스크립트 부분이 추가됨
methods: {
updateMessage(event) {
this.message = event.target.value; // 수동으로 반영
}
}
결론
v-model과의 차이점
특징 | v-model | v-bind (+ @input) |
바인딩 방향 | 양방향 (데이터 ↔ 입력 요소) | 단방향 (데이터 → 입력 요소) + 이벤트로 반영 |
코드 간결성 | 한 줄로 해결 (v-model="message") | :value와 @input을 따로 작성 |
내부 동작 | 자동으로 :value와 @input 처리 | 직접 이벤트 핸들링 필요 |
유연성 | 기본 동작 외 커스터마이징 제한적 | 입력값을 가공하거나 조건 추가 가능 |
사용 사례 | 간단한 양방향 바인딩 필요 시 | 입력값을 제어하거나 변환할 때 유용 |
반응형