필요한 데이터를 html의 data 속성을 이용하여 주로 담아놓곤 하였습니다.
이를 React with typescript에서 적용할 때 막혔던 부분에 대한 내용입니다.
위와 같이 사용하려 시도했었습니다.
하지만 계속 에러를 뱉어냈고 이를 이해하지 못했었습니다.
이유는 다음과 같습니다.
event의 target이 document, element, window등의 요소가 될 수 있기 때문입니다.
그래서 아래와 같이 event의 target이 내가 정한 요소의 instance가 아니라면 early return을 하여 런타임에서 에러가 없을 수 있게 하였습니다.
위의 이미지속의 코드에서 e.target의 instance를 검사하여 div 요소가 아니면 함수를 탈출하게 하였습니다.
위와 같이 작성후 코드레벨상에서의 에러 && 런타임에서의 에러 없이 동작할 수 있도록 하였습니다.
출처 : https://stackoverflow.com/questions/49631688/property-dataset-does-not-exist-on-type-eventtarget
Property 'dataset' does not exist on type 'EventTarget'
When trying to access the dataset on a button after a click, I get this^ error. linkProvider = (ev: React.SyntheticEvent<EventTarget>) => { console.debug('ev.target', ev.target.dataset[...
stackoverflow.com
'Frontend > React' 카테고리의 다른 글
React props, state 🏔 (0) | 2022.04.02 |
---|---|
React useReducer 🌱 (0) | 2022.04.02 |
React setState 🌱 (0) | 2022.03.27 |
React.memo 🌱 (0) | 2022.03.27 |
React useCallback, useMemo (0) | 2022.03.27 |