emit, prop 대신 defineModel()을 사용하여 구현 하는 것에 대한 질문 입니다.
최근 vue 문서를 보다가 "Vue 3.4부터는 defineModel() 매크로를 사용하는 것이 권장되는 접근 방식입니다:"라고 되어있었습니다.
그래서 vue 버전을 올리고 강의에 emit, prop 사용하는 곳을 defineModel()방식으로 변경하고 싶어서 강의 코드를 수정하면서 진행 하고 있습니다.
대표적으로 커리큘럼 email 회원가입&로그인 파트에 사용된 prop, emit 부분을 아래와 같이 수정 해 보았습니다.
기존 AuthDialog.vue

변경 AuthDialog.vue

기존 SignInForm.vue

변경 SignInForm.vue

테스트 하면서 동작을 되지만 구현 하면서 질문이 두 가지 셍걌습니다:
defaule.vue - AuthDialog.vue - SignInForm.vue간에 viewMode와 closeDialog 값을 제가 구현한 방식 대로 하는 게 문제가 없는지 알고 싶습니다.
AuthDialog.vue에서 아래서 변경된 closeDialog 값을 인식 하기 위해서 watch를 사용하였는데 제가 구현한 방식보다 괜찮은 방법이 있는지 알고 싶습니다.
defineModel() 방식을 사용하면 강의 코드 상당 수가 간단해 질 것 같네요 좋은 강의 곱씹으면서 보고 또 보고 있습니다.
정말 감사합니다.
Answer 1
0
안녕하세요 🙂
새로운 API를 적용해보는 것은 좋은 습관인 것 같아요 👍
1번 답변
문제 없어 보입니다.
2번 답변
closeDialog를 v-model로 한 이유를 제가 생각해 봤을 때 저는 알 수 없어서요. v-model로 해야 하는지 한번 생각해보시면 좋을 것 같습니다.
storage 사용 문의
0
72
2
무한 스크롤링 질문
0
77
2
짐코딩님..! unplugin-vue-router/vite 적용 최근방식 부탁드령요 ㅜㅜ
0
147
3
Quasar를 강의 버전 그대로 맞추면 실행할 때 에러가 발생해서, 다른 버전만 맞추니 잘 작동합니다.
1
93
1
post/[id]/index.vue에서 layouts/default.vue가 안 나오는 데 어떤 이유일까요?
0
138
2
Cross-Origin-Opener-Policy policy would block the window.closed call.
0
425
2
[공유] 잘동작하는 unplugin-vue-router 버전 관련
0
263
2
route.meta? 에서 물음표 개념
0
117
2
functions.region is not a function
1
219
1
unplugin-vue-router 가 안되네요.
0
266
2
건의사항
0
179
1
Firebase Hosting 후 페이지 안뜰 때!
0
180
1
type : negative 무슨 의미인가요?
0
192
2
강의 교안은 어떻게 볼 수 있나요?
0
261
2
플로그인 설치
0
232
2
Firebase 요금제에 관한 문의사항
0
281
1
사용자 컴포넌트를 작성하는 것에 대한 문의
0
174
1
Firebase 강의 Section1의 Auto page 설정에 관련되어
0
343
2
tiptap 스타일 파일은 따로 안 올려주시나요?
0
354
1
LocalStorage 값 변경 자동 체크
0
533
1
Volar Deprecated
0
670
1
호스팅 문제 관련 질문 있습니다.
0
220
1
안녕하세요!
0
283
1
안녕하세요! tiptap 강의 듣는중인데
0
345
1

