Inflearn brand logo image

인프런 커뮤니티 질문&답변

이 규성님의 프로필 이미지
이 규성

작성한 질문수

[코드캠프] 부트캠프에서 만든 '완벽한' 프론트엔드 코스

[03-02] 기초타입

마우스이벤트 형식이 제네릭이아닙니다 오류 해결 못하고 있습니다 어떤 거 인지 알 수 잇을까여?

해결된 질문

작성

·

83

0

import { ChangeEvent, useState } from "react";
// 리팩토링
const Board = () => {
  const [writer, setWriter] = useState("");
  const [title, setTitle] = useState("");
  const [content, setContent] = useState("");
  const [isActive, setIsActive] = useState(false);

  const onChangewriter = (event:ChangeEvent<HTMLInputElement>) => {
    setWriter(event.target.value);
    if (event.target.value !== "" && title && content)  return  setIsActive(true);
      setIsActive(false);
  };
  const onChangeTitile = (event:ChangeEvent<HTMLInputElement>) => {
    setTitle(event.target.value);
    if (writer && event.target.value  && content)  return  setIsActive(true);
      setIsActive(false);
  };
  const onChangeContent = (event:ChangeEvent<HTMLInputElement>) => {
    setContent(event.target.value);
    if (writer && title  && event.target.value) return setIsActive(true)
      setIsActive(false);
  };

  const onClickSubmit = (event:MouseEvent<HTMLButtonElement>) => [
    console.log(writer),
    console.log(title),
    console.log(content),
    alert("게시물 등록이 완료되었습니다"),
  ];

  return (
    <>
      작성자 : <input type="text" onChange={onChangewriter} />
      <br />
      제목 : <input type="text" onChange={onChangeTitile} />
      <br />
      내용: <input type="text" onChange={onChangeContent} />
      <br />
      <button
        onClick={onClickSubmit}
        style={{ backgroundColor: isActive === true ? "yellow" : "none" }}
      >
        등록
      </button>
    </>
  );
};

export default Board;

답변 2

1

이 규성님의 프로필 이미지
이 규성
질문자

감사합니다! 열심히 강의 듣겠습니다!!

0

노원두님의 프로필 이미지
노원두
지식공유자

안녕하세요! 규성님!

 

코드 최상단에 ChangeEvent 가 임포트되어있는 반면에, MouseEvent는 임포트 되어있지 않은 것 같아요!

import { ChangeEvent, useState } from "react";

 

따라서, ChangeEvent 관련 에러메시지는 나오지 않았지만, MouseEvent 관련 에러메시지만 발생하고 있는 것 같아요!^^

MouseEvent도 역시 마찬가지로 기능을 사용하기 위해 임포트해 주세요!

import { ChangeEvnet, useState, MouseEvent } from 'react'
이 규성님의 프로필 이미지
이 규성

작성한 질문수

질문하기