개발일지/TIL
typescript '() => void' 형식은 'MouseEventHandler<HTMLDivElement>' 형식에 할당할 수 없습니다
뉴히
2024. 3. 26. 11:29
'(id: string) => void' 형식은 'MouseEventHandler<HTMLDivElement>' 형식에 할당할 수 없습니다. 'id' 및 'event' 매개 변수의 형식이 호환되지 않습니다. 'MouseEvent<HTMLDivElement, MouseEvent>' 형식은 'string' 형식에 할당할 수 없습니다.
ts(2322)
index.d.ts(2424, 9): 필요한 형식은 여기에서 'IntrinsicAttributes & HTMLAttributes<HTMLDivElement> & RefAttributes<HTMLDivElement>' 형식에 선언된 'onClick' 속성에서 가져옵니다.
const onClickItem = (id: string) => {
router.push(`products/${id}`);
};
<Card onClick={onClickItem}></Card>
해결
<Card onClick={()=> onClickItem(id)}></Card>