2017-02-01 1 views
1

간단한 질문입니다. 업데이트가있을 때마다 또는 새 렌더링을 시작할 때만 새 수신기를 추가해야합니까? 나는 그림자 DOM의 작동 방식을 이해하고 난 후에 추가해야합니다 경우 모든마운트 또는 업데이트시 addEventListener에 반응합니까?

감사

+0

질문이 명확하지 않습니다. 좀 더 자세한 정보를 제공 할 수 있습니까? – VJAI

답변

1

모든 이벤트는 here에 렌더링하지 않습니다 아주 간단한

합니다. React DOM은 브라우저 DOM의 추상화로 페이지 요소를 추상화 한 것입니다. 그래서 React DOM은 추상화의 추상화입니다.

그리고 React에있는 모든 이벤트는 기본 브라우저 이벤트가 아닙니다. 그것들은 합성 사건이라고 불린다. 이벤트 시스템은 플랫폼 독립성을 지원하기 위해 기본 브라우저 이벤트를 감싸는 래퍼입니다. 당신이이 구성 요소 React.Component 구문을 사용하여 반작용 정의되면

, 당신은 또한이 같은 모든 이벤트 리스너를 설정하는 무료 :

// somewhere inside render 
return (
    <a href="#" onClick={handleClick}> 
     Click me 
    </a> 
); 

이 코드는 React.createElement를 사용하여 렌더링 및 DOM 반응 내부에 남아있을 것입니다.

구성 요소주기를 확인한 경우 render()은 마운트 및 업데이트 중임을 알 수 있습니다.

enter image description here

는 희망이 당신의 탐구에 응답합니다.

관련 문제