e.target
본문 바로가기

Frontend/React

e.target

추가

이벤트중 원하는 데이터만 매개변수로 파라미터로 넘겨주기

api호출함수(){
	...
	document.querySelector('...').addEventListenr('click', e => test(e, data))
}

여기 한 API를 호출하는 함수가 있다고해보고 실행되면 특정 클레스에 클릭 이벤트를 걸어준다고 가정해보자

클릭 이벤트가 발생되면 e을 넘겨주는데 event에서 원하는 데이터만 뽑아서 사용할 수있다.

let itemInfo = {}
function test({ target: {dataset}}, data){
	//dataset은 e.target.dataset을 의미
    itemInfo = data.find(e => e.id === +dataset.id);//338
    console.log(itemInfo)
}

---

 

e는 함수를생성할때 파라미터(매개변수)를 의미한다

    const onChange = (e) =>{
        console.log(e.target)
        console.log('e.target.name:'+e.target.name)
        console.log('e.target.value:'+e.target.value)
    }
    ...
    <input name="username" onChange={onChange} placeholder = "이름"/>
    <input name="nickname" onChange={onChange} placeholder = "닉네임"/>
    <button onClick={onReset}>초기화</button>

 

여기 onChange함수가 있는 input태그 2개에 a,b 각각넣어보자(초기화버튼은 무시해도된다)

e.target은 특정 이벤트가 발생하는 태그를 가르킨다

그렇기때문에 input태그를 가르키게된다.

 

e.target.name은 인풋태그의 이름

e.target.value는 인풋태그에 입력되는 값을 의미한다.

 

export default function UserList({testest}) {
    const [inputs, setInputs] = useState({
        username : '',
        nickname:''
    })
	const {username, nickname} = inputs;
    const onChange = (e) =>{
        // console.log(e.target)
        // console.log('e.target.name:'+e.target.name)
        // console.log('e.target.value:'+e.target.value)
    
        setInputs({
            ...inputs,
            [e.target.name]:e.target.value
        })
    }
    ...

useState에서 이용되는 예시이다

참고로 [e.target.name]처럼

객체안에서 키를 []로 감싸면 그 안에넣은 레퍼런스가 가르키는 실제값이 key값으로 사용된다

 

 

반응형

'Frontend > React' 카테고리의 다른 글

Counter 리액트  (0) 2020.10.19
리액트 명함리스트  (0) 2020.10.16
[React] 숫자 증가감소 버튼만들기 Counter  (0) 2020.07.12
[React] props와 state(+css 적용)  (0) 2020.07.11
리액트? 리액트 프로젝트 만들기  (0) 2020.07.09