stopPropagation ()
addEventListener('click', false) <<<--- false는 캡쳐링을 false한다는 뜻이다.
preventDefault(); <-기본 이벤트의 진행을 막는다.
e.target <<- 이벤트의 근원이다.
제이쿼리에서 $('')을 걸면 원본객체가 아니라 jqeury객체로 둘러쌓인 객체이다.
그래서 원본객체를 얻어오고싶으면 .get(0)을 해야한다.
그래서 만약 $("#ex") 라는 제이쿼리를 반복해서 선택해 써야한다면 변수에 할당해서 같은객체를 참조시키거나
chainning을 써서 코드를 짜는게 좋다(계속 제이쿼리를 쓰면 객체를 계속 만드는것이기때문..)
let $ex - $('#ex')
$ex.attr('src').....
$ex.attr('src').....
$ex.attr('src').....
$ex.attr('src').....
$ex.attr('src')..... //이렇게하면 제이쿼리객체가 같은객체이기때문에 계속 생성하지않음
hooks는 아래와같은 코드를 줄이자는 생각에서 나왔다.. (인풋태그를 쓰기위해 길어진 코드)
const [title,setTitle] = useState(str)
const changeTitle = (e) => {
e.stopPropagation(); //이벤트를 전파하지않음
setTitle(e.target.value);
}
const clearTitle = (e) => {
setTitle("");
};