• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    해결됨

$emit()이 호출되는 this에 관한 질문

20.08.22 22:24 작성 조회수 293

3

안녕하세요, 강의 잘 보고 있습니다.

컴포넌트 appHeader 안 method인 passEvent에서 finction 선언 후, 그 안에 this.$emit('pass')를 통해 상위 컴포넌트로 pass event를 발생 시켰는데요

이때 $emit()이 호출되는 this가 무엇인지 궁금합니다.

좀 더 자세히는 this가 appHeader 변수에 할당 된 map({}) 객체를 가리키는 건지, passEvent에 할당 된 function객체를 가르키는 건지, 그렇다면 $emit 이라는 method는 어느 객체에 구현된 method인지 궁금합니다.

답변 1

답변을 작성해보세요.

0

안녕하세요 빵꾸님, 좋은 질문이네요. 컴포넌트 안에서 `this`는 해당 컴포넌트의 인스턴스를 가리킵니다 :) 자바스크립트의 this에 대해서 좀 더 학습을 해보시면 왜 저 시점에 컴포넌트를 가리키고 있는지 "실행 컨텍스트" 라는 것에 대해 감을 잡으실 수 있을 것 같아요. 일단 더 학습하실 수 있게 아래 링크 남겨드립니다.

https://joshua1988.github.io/vue-camp/js/this.html

수강해주셔서 감사합니다 :)