EventHandler Type이 React에서 정의한 타입인 이유가 궁금합니다.
446
投稿した質問数 3
React에서는 React 팀이 직접 만든 Event 타입을 사용하고, Vue에서는 MDN에서 제공하는 범용적 Event 타입을 사용한다고 하시고, React에서 가상 DOM 때문에 React 팀이 만든 Event 타입을 사용한다고 말씀 주셨습니다.
하지만, Vue도 마찬가지로 vDOM을 사용하고 있는 것으로 알고 있어요. 🙂 그렇다면, Vue도 vDOM을 사용한다면 Template 문법 내부에서 범용적 Event 타입이 아니라 커스텀 이벤트 타입을 사용해야 맞는 것 아닌가요?
굳이 React 에서 커스텀 이벤트 타입을 사용하는 이유와, Vue에서 범용적 이벤트 타입을 사용하는 각각의 이유가 있을 것 같은데, 이에 대한 궁금증이 생겨 질문드립니다!
回答 1
1
안녕하세요 선태님, 잘 지내시죠? 🙂 선태님은 이 강의 대상보다 레벨이 훨씬 높으실 것 같은데 수강해 주셨군요.. ㅋㅋ 질문도 역시 좋네요.
답변 드리자면 요건 라이브러리 내부 타입 정의 방식 때문에 그렇습니다. 리액트는 JSX 문법에 맞춰서 최대한 타입 정의를 세세하게 한 반면에 뷰는 타입스크립트 내부 타입에 최대한 의존해서 구현했던 것 같아요. 아마 JSX를 기반으로 하고 JS를 그대로 차용할 수 있는 리액트의 특성과 리액티비티와 템플릿 문법을 중시하는 뷰의 특성 차이인거 같아요.
Vue 2에서 3로 넘어갈 때 타입 정의가 어떻게 개선됐는지도 한번 살펴보시면 더 이해하시기 수월할 것 같네요. 아울러서 리액트 내부 타입 정의와 뷰 내부 타입 정의도 한번 비교해 보세요. 재밌을 거예요 :)
그럼 올 한해도 즐겁고 건강하게 보내시길 바랄게요. 늘 응원해 주셔서 감사합니다 :)
Context API vs Zustand 그리고 Auth
0
15
2
110강부터 따라가기가 힘듭니다...
0
27
1
커서에서 붙여넣기
0
13
1
깃허브 사용시 폴더경로 관련질문
0
13
1
[reducer] 기능별 폴더 구조 설계/ 파일 분리로 유지 보수 가능한 아키텍처 구축
0
13
2
순수 함수 / 순수 컴포넌트
0
13
1
스니펫이 이상해요
0
22
2
/output-style 명령어는 폐기 되었다고 나오네요.
0
29
1
프롬프트 작성시 html, css, javascript
0
20
1
Editor Component의 최적화 불가능 이슈
0
31
2
Cursor 창이 수업 내용과 달라요.
0
23
2
Supabase MCP 관련 질문입니다
0
25
1
에러핸들링- rootlayout에 관하여
0
22
2
useCallback ⊂ useMemo
0
31
2
강의 내용 누락
0
23
0
클로드 로그인 후 승인창이 안떠요
0
32
1
깃허브 저장소를 어디에 첨부하셨나요?
1
33
1
61강 claude.local.md 변경사항 관련 질문
0
39
3
스타터 저장소
1
37
1
라이브러리 설치 질문
0
33
2
linter 질문
0
38
2
JSX.Element 컴포넌트 타입 정의 관련 재 질의
1
198
2
JSX.Element 컴포넌트 타입 정의 관련 질의
0
148
1
프로젝트 생성 관련 가이드 영상은 왜 없는건가요
1
225
3

