var vm = new Vue({
//옵션
})
new Vue({
el: '#app',
template: '',
data: {},
props: [], // {}
methods: {},
computed: {},
watch: {}
});
el ( string | HTMLElement )
대상이 되는 html element 또는 css selector ( vm.data )
props( Array<string> | Object )
부모 컴포넌트로부터 전달 받은 property들의 Array 혹은 Object
methods ( [key: string]: Function )
Vue 인스턴스에서 사용되는 메소드. this 컨텍스트를 Vue 인스턴스에 바인딩 합니다.
computed ( [key: string]: Function | { get: Function, set: Function } )
계산된 속성. getter와 setter는 자동으로 this 컨텍스트를 Vue 인스턴스에 바인딩 합니다.
watch ( [key: string]: string | Function | Object | Array )
감시된 속성. Vue 인스턴스에 데이터가 변경되는 시점에 호출
※ 참고
options 속성이나 콜백에 created: () => console.log(this.a) 이나 vm.$watch('a', newValue => this.myMethod()) 와 같은 화살표 함수 사용을 지양하기 바랍니다. 화살표 함수들은 부모 컨텍스트에 바인딩되기 때문에, this 컨텍스트가 호출하는 Vue 인스턴스에서 사용할 경우 Uncaught TypeError: Cannot read property of undefined또는Uncaught TypeError: this.myMethod is not a function와 같은 오류가 발생하게 됩니다.
new Vue({
el: '#app',
data: {
message: 'Hello, Vue!', //string
price: 10000, //number
list: ['One','Two'], //list
object: { //object
a:1,
b:2,
}
}
})
- beforeCreate: Vue 인스턴스가 생성되기 전
- created: vue 인스턴스가 생성된 후
- beforeMount: Vue 인스턴스가 마운트되기 전
- Mounted : Vue 인스턴스가 마운트된 후
- beforeDestory: Vue 인스턴스가 파괴된기 전
- Destory: Vue 인스턴스가 파괴된 후
- beforeUpdate: Vue 인스턴스의 데이터가 변경되어 다시 렌더링하기 전
- upDated: Vue 인스턴스의 데이터가 변경되어 다시 렌더링한 후
new Vue({
el: '#app',
data: {
search: ''
},
watch: {
this.$(http.get('/search?value' + value)
.then(function (response) {
/* ... */
});
}
}
}
});