inflearn logo
강의

講義

知識共有

ReactとVueで学ぶTypeScript必須概念 (feat. ChatGPT)

ReactとVue UIイベントタイプの違い

EventHandler Type이 React에서 정의한 타입인 이유가 궁금합니다.

414

pain103

投稿した質問数 4

2

React에서는 React 팀이 직접 만든 Event 타입을 사용하고, Vue에서는 MDN에서 제공하는 범용적 Event 타입을 사용한다고 하시고, React에서 가상 DOM 때문에 React 팀이 만든 Event 타입을 사용한다고 말씀 주셨습니다.

하지만, Vue도 마찬가지로 vDOM을 사용하고 있는 것으로 알고 있어요. 🙂 그렇다면, Vue도 vDOM을 사용한다면 Template 문법 내부에서 범용적 Event 타입이 아니라 커스텀 이벤트 타입을 사용해야 맞는 것 아닌가요?

굳이 React 에서 커스텀 이벤트 타입을 사용하는 이유와, Vue에서 범용적 이벤트 타입을 사용하는 각각의 이유가 있을 것 같은데, 이에 대한 궁금증이 생겨 질문드립니다!

 

vue.js react typescript vue-3 chatgpt

回答 1

1

captain

안녕하세요 선태님, 잘 지내시죠? 🙂 선태님은 이 강의 대상보다 레벨이 훨씬 높으실 것 같은데 수강해 주셨군요.. ㅋㅋ 질문도 역시 좋네요.

답변 드리자면 요건 라이브러리 내부 타입 정의 방식 때문에 그렇습니다. 리액트는 JSX 문법에 맞춰서 최대한 타입 정의를 세세하게 한 반면에 뷰는 타입스크립트 내부 타입에 최대한 의존해서 구현했던 것 같아요. 아마 JSX를 기반으로 하고 JS를 그대로 차용할 수 있는 리액트의 특성과 리액티비티와 템플릿 문법을 중시하는 뷰의 특성 차이인거 같아요.

Vue 2에서 3로 넘어갈 때 타입 정의가 어떻게 개선됐는지도 한번 살펴보시면 더 이해하시기 수월할 것 같네요. 아울러서 리액트 내부 타입 정의와 뷰 내부 타입 정의도 한번 비교해 보세요. 재밌을 거예요 :)image

그럼 올 한해도 즐겁고 건강하게 보내시길 바랄게요. 늘 응원해 주셔서 감사합니다 :)

1

pain103

감사합니다! 궁금한 부분이 해결되었어요 🙂 항상 좋은 강의 만들어주셔서 감사합니다!!

클로드코드 유료플랜 할인 방법이 있을까요?

0

16

0

제네릭 클래스 핸드북 페이지가 undefined라고 나옵니다.

0

7

1

API Error : 400 에러의 원인과 해결방법이 궁금합니다!!

0

16

2

퍼미션 권한 설정 문의

0

18

2

Next.js + Tanstack Query BFF 구조 질문

0

11

1

커서에서 shift+enter가 안됩니다.

0

19

2

mcp 설치를 못하겠어요

0

32

2

라이브러리 관련 질문 있습니다!

0

24

2

output-styles은 Claude Code의 공식 기능이 아니라고 하는데 혹시 변경된걸까요?

0

21

2

클로드 변경

0

25

2

/config 에서 output-style 을 변경

0

23

1

한국어 문제

0

25

2

Node.js 관련 질문드립니다.

0

29

3

클로드 버전업 설치

0

26

2

쿠폰 문의 드립니다.

0

20

2

13강 프로젝트 생성 Next.js 설치이슈

0

24

3

Shell Command: Install 'cursor' command 진행에서 막혔습니다

0

25

3

74. 데이터 캐시 - 1 (이론) 강의 영상 누락

0

26

1

Agent team / subagent 생성시 재사용 가능 여부

0

31

2

shirimp task manager는 프로젝트 처음 시작 단계에서도 쓴는 것 과 관련해서 질문

0

26

2

MCP 서버 내용 변경

0

31

2

JSX.Element 컴포넌트 타입 정의 관련 재 질의

1

165

2

JSX.Element 컴포넌트 타입 정의 관련 질의

0

120

1

프로젝트 생성 관련 가이드 영상은 왜 없는건가요

1

184

3