• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

제로초님~

20.06.13 23:19 작성 조회수 86

0

제로초님 질문이 있어서 하나 남깁니다.

제로초님이 강의 하실 때 반복을 줄이는게 좋다고 하여서 반복을 줄일려고 노력을 하고 있습니다!

매번 강의 리뉴얼도 잘 보고 있습니다. 라이브는 시청 못하지만 다시보기로 매번 보고 학습 하고 있습니다.

그러던중 

import React, { useState } from "react"

const ForData = () => {

   const [ testList, srtTestList ] = useState([ "test1", "test2", "test3", "test4", "test5"])

   const test1 = (e) => {

          console.log(e.target.value) 

  }

    return(

        <>

            {testList.map((v) => 

                <>

                    <div> {v}</div>

                    <input type="text"  onChange={v}/>

                    <div> {v}</div>

                </>

            )}        

        </>

    )

}

----------------------------------------------------------------------------

.map을 이용 하여 중복 되는 부분을 줄이고 onChange를 시키려고 하는데 

Expected `onChange` listener to be a function, instead got a value of `string` type.

에러가 나면서 되지 않더라구여 

혹시 이런 onChange의 경우에는 .map을 사용 할수 없는 건가요?? 아니면 다른 방법이 있나 싶어서 질문을 남기게 되었습니다!

답변 1

답변을 작성해보세요.

0

onChange에는 함수를 넣어주셔야 합니다. 함수 대신에 문자열 'test1'을 넣고 계시네요. 그냥 onChange={test1} 하시면 됩니다. 어차피 test2, test3, test4도 test1이랑 모양 같으니까요.