작성
·
258
0
PostForm.vue 파일로 컴포넌트 분리 중
PostCreateView , PostForm 동작에 대해서 이해가 잘 안가서 문의 드립니다.
PostCreateView 에서 PostForm 사용시 title, content 를
v-bind가 아닌 v-model 사용하는것이 어떻게 동작되는지 모르겠습니다.
v-model을 사용해도 자식 컴포넌트에서 defineProps 으로 받을 수 있는건가요?
PostForm 에서
$emit('update:title', $event.target.value) 하면 상위 컴포넌트에서는 어떤 동작이 발생되는지 궁금합니다.
@update 와같이 받는 부부분이 없는데, update:title, update::content 가 어떤 동작을 의미하는지 모르겠습닏다.
답변 1
0
안녕하세요 🙂
질문1) PostCreateView
에서 PostForm
사용시 title
, content
를 v-bind
가 아닌 v-model
사용하는것이 어떻게 동작되는지 모르겠습니다. v-model
을 사용해도 자식 컴포넌트에서 defineProps
으로 받을 수 있는건가요?
>> 네, 맞습니다. 자식 컴포넌트에서 modelValue
props로 받고, update:modelValue
emit으로 업데이트할 수 있습니다.
<script setup>
const props = defineProps(['modelValue'])
const emit = defineEmits(['update:modelValue'])
</script>
질문2) PostForm 에서 $emit('update:title', $event.target.value) 하면 상위 컴포넌트에서는 어떤 동작이 발생되는지 궁금합니다. @update 와같이 받는 부부분이 없는데, update:title, update::content 가 어떤 동작을 의미하는지 모르겠습닏다.
>> 상위 컴포넌트에서는 @update:title=""
이벤트로 받을 수 있고 다중 v-model을 활용하면 v-model:title=""
로 연결할 수 있습니다.
질문을 보면 v-model
이 양방향 바인딩이다. 까지는 알고 계신 것 같은데요.
v-model
깊은 이해
Vue3 다중 v-model
이러한 개념을 학습하지 않으신 것 같습니다. 꼭 학습 후에 실전편 강의를 보는것을 권장드립니다.