비슷한질문.. mousedown을 click으로 바꾸면 왜안되나요?
211
작성한 질문수 19
선생님 비슷한 질문인데 궁금점이 해결이 안되서 여쭤봅니다
useEffect( () => { const listener = (event) => { console.log('ref', ref) if (!ref.current || ref.current.contains(event.target)) { return; } handler(); }; document.addEventListener("mousedown", listener); return () => { document.removeEventListener("mousedown", listener); }; }, []);
마우스다운이랑 클릭이랑 다른점은 배웠는데
모달창 밖을 클릭하는데 왜안되는지 모르겠습니다
click 이 mousedown이랑 mouseup 두가지 행위가 아닌지..
모르겠네요 ㅠ
답변 1
0
안녕하세요!
레드님
제가 직접 click으로 변경해서 해봤는데 잘되는 것 같은데 안 되나요 ?
export default function useOnClickOutside(ref, handler) {
useEffect(
() => {
const listener = (event) => {
if (!ref.current || ref.current.contains(event.target)) {
return;
}
handler(event);
};
document.addEventListener("click", listener);
document.addEventListener("touchstart", listener);
return () => {
document.removeEventListener("click", listener);
document.removeEventListener("touchstart", listener);
};
},
[ref, handler]
);
}
이렇게 해서 해보니 잘되는 것 같습니다 ~
강의 소스 코드 압축 풀기 오류
0
90
1
런타임 에러 ㅠㅠ
0
105
1
강의대로 따라갔는데 에러보다 api키로 들어간 넷플릭스? 그런게 렌더링 되지 않습니다 ㅠ
0
114
1
안녕하세요 개발과 상관없는 질문입니다만
0
123
1
리액트 라우터 관련
0
119
1
react-beatiful-dnd에서 문제가 발생합니다.
0
108
1
react19에서는 react-beautiful-dnd가 설치되지 않습니다.
0
833
1
useEffect로 사용을 해도 되나요?
0
210
1
넷플릭스 오리지널 제외하고 슬라이드가 동작을 안합니다.
0
202
1
react 19의 useActionState가 더이상 isPending은 지원하지 않는 듯합니다
0
287
2
리액트 dockderfile 작성 시 COPY 질문
0
156
1
next.js에서부터는 react query 필요없는지
0
327
1
기능
0
204
1
오류가 안보여요
0
206
1
CSS
0
225
1
local storage
0
223
1
list컴포넌트 생성하기
0
230
1
검색어 입력 후 초기화하는 방법 궁금합니다!
0
342
1
Banner.css에 대해서
0
464
1
플러그인이 추천을 안해줍니다
0
334
1
마이너스버튼 테스트
0
285
2
리액트 서버 실행 오류
0
1169
2
오류메세지는 확인했는데 어떻게 고쳐야 할지 모르겠습니다 ㅠ
0
306
1
creactStore질문이요
1
293
2





