• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 React 게시판 컴포넌트 안에 컴포넌트 생성해서 쓸때 input state 변경

컴포넌트 안에 컴포넌트 생성해서 쓸때 input state 변경

2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 글쓴이
  • #67009

    안다용
    참가자
    input state를 만들어서 변경해서 값을 받아와서 사용하고 있습니다.
    return  부분을 컴포넌트로 만들어서 보여주고 싶은데, 동작이 달라집니다. 
    return 부분에 직접 input을 만들어서 사용하면 정상적으로 동작하는데,
    컴포넌트로 만들어서 쓰면 input창 안에서 변경될때마다 커서가 초기화?됩니다.
    
    1. 이유가 뭘까요?
    2. 올바른 사용법은 뭘까요?
    
    const Rename = () => {
    const [inputText, setInputText] = useState("");
    
      const handleChange = (e) => {
        setInputText(e.target.value);
      };
     return (
      <label htmlFor="changeName" className="mb10 dpb">
              변경할 컬럼명
            </label>
            <input
              type="text"
              id="changeName"
              value={inputText}
              onChange={handleChange}
            ></input>
    )
    }
    
    const Rename = () => {
    
    const [inputText, setInputText] = useState("");
      const handleChange = (e) => {
        setInputText(e.target.value);
      };
    
    
    const InputTest = () => { 
    return ( 
    <> 
            <label htmlFor="changeName" className="mb10 dpb">
              변경할 컬럼명
            </label>
            <input
              type="text"
              id="changeName"
              value={inputText}
              onChange={handleChange}
            ></input>
    </>
    )
    }
    return (
     <InputTest />
    )
    }
    
    #67034

    codingapple
    키 마스터
    state가 변경될 때 마다 state로 value를 재설정해서그런듯요 
    input에 value 속성은 뺍시다
2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관, 개인정보처리방침
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠