개발 관련 모음/Vue

v-model과 v-bind 의 차이점

mini 아카이브 사서 2025. 3. 4. 14:04
반응형

Vue를 개발하다 보면 v-modelv-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 처리 직접 이벤트 핸들링 필요
유연성 기본 동작 외 커스터마이징 제한적 입력값을 가공하거나 조건 추가 가능
사용 사례 간단한 양방향 바인딩 필요 시 입력값을 제어하거나 변환할 때 유용

 

반응형