자신이 종속된 인스턴스를 가리킨다
this는 runtime에 생성되는 인스턴스에 중점을 맞춰 할당된다
runtime에 생성된 vue 인스턴스의 모습은 직관적이지 않을 수 있음
var vm = new Vue({
el: '#app',
methods:{
increaseNum: function(){
this.num++;
//js에서 this는 increaseNum을 가리키는 게 맞다
//vue는 사실상 아래의 코드와 같은 형식으로 생성된다
}
},
data: { num: 10 }
})
- Vue 객체 내부에 바로 num 데이터와 increaseNum 메소드가 생성된다
그러므로 methods, data는 생성되는 객체에 명시되지 않는다- 부모&자식 컴포넌트 모두 $children, $parent의 요소로 객체 내부에 연결되어 있는 것을 대충 볼 수 있음
var vm = new Vue({
el: '#app',
increaseNum: function(){
this.num++;
},
num : 10,
});
this 키워드는 정상적인 함수 선언과 화살표 함수 선언 내부에서 동작이 다르다
vue 객체 내부에서는 this가 vue 인스턴스를 가르키며 이로 인해 내부 데이터에 접근 가능