$emit()이 호출되는 this에 관한 질문
안녕하세요, 강의 잘 보고 있습니다.
컴포넌트 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
수강해주셔서 감사합니다 :)
개발자 툴에서 Vue가 표시되지 않는 현상.
0
93
2
chrome 확장 devtools 버전 문제
0
81
1
Vue.js not detected가 자꾸 뜹니다
0
82
2
마지막 강의가 안되요
0
55
1
data, computed, watch > Reactivity
0
50
1
f12누르고 개발자도구에 vue 탭이 안생겨요
0
89
1
vue composition api
0
72
1
강의 자료 다운이 될까요?
0
127
1
개발자 도구에서 뷰탭이 안보여요....
0
583
3
프롭스 데이터 질문입니다.
0
112
1
component.html:11 Uncaught ReferenceError: Vue is not defined at component.html:11:20 (anonymous) @ component.html:11
0
139
1
화면이 안떠요,, 이전 이후 강의는 뜨는데..
0
235
6
크롬 확장 프로그램 vue devtools 설치했는데
0
529
2
코드를 수정하고 브라우저의 Vue로 넘어가면 다운이 됩니다.
0
242
1
버튼을 클릭해도 event가 발생하지 않습니다.
0
309
1
vue3 css 경로 표시 문의
1
230
2
개발자도구 vue탭
0
354
1
화면 코드 보기
1
225
2
App.vue 내용 변경했는데 창이 연결할수없대요ㅜㅜ
1
382
2
html/css/js로 작성된 코드를 vue.js로 일부 전환하고자 이 강의를 듣기 시작했습니다.
1
885
2
{{ num }} 이 <app-content> 아래에 들어가 있을때에는 노출이 안됩니다...
1
287
2
뷰 개발자도구 이벤트 타임라인 어느 부분에서 확인가능한건가요
1
400
2
다음 단계 강의는...?
1
386
2
버튼을 눌러도 data의 값이 변경되지 않습니다
1
276
2





