인프런 커뮤니티 질문&답변

jude님의 프로필 이미지
jude

작성한 질문수

Svelte.js [Core API] 완벽 가이드

6. tick

onMount 응용해서 적용해보려고 하는데 오류가 나네요.

작성

·

293

1

 

위와 같이 onMount 라이프사이클 안에 함수를 선언하고 DOM을 가져오는 구문을 작성했는데 오류가 나네요, 콘솔에는 not defined라고 나오고..

흐음.. 나중에 어떻게 onMount를 활용하는지 영상을 더 보긴 해야할거 같은데...

vue 생각하면 당연히 되어야 하는데 안되니까 당황스럽네요..ㅎㅅㅎa

 

onMount 안에서는 이렇게 처리하면 안되는걸까요?

답변 1

1

HEROPY님의 프로필 이미지
HEROPY
지식공유자

jude 님 안녕하세요~😊

handler 함수가 onMount 콜백 안에서 선언되어 있어서 handler 함수는 템플릿(HTML)에서 사용할 수 없습니다.

컴포넌트 최상위 영역에서 선언돼야 템플릿에서 사용할 수 있습니다.

따라서 다음과 같이 수정해야 합니다. 

 

Vue와 비교하자면, handler 함수가 methdos 옵션에 없는 상태로 mounted 훅 안에서 선언돼고 템플릿에서 사용하려고 시도하는 것과 같습니다.

jude님의 프로필 이미지
jude
질문자

아~ 그러네요, vue에서도 마운티드에서 호출만 했었군요.. 헷갈렸네용..

친절한 답변 감사합니다~! 패스트 캠퍼스 초격차 패키지 강의도 잘 보고 있습니다 ^^

jude님의 프로필 이미지
jude

작성한 질문수

질문하기