작성
·
230
2
안녕하세요. 좋은 강좌 잘 듣고 있습니다.
종종 메서드가 호출이 되고, 그다음 정의되는 부분이 있습니다.
예를들어 아래의 코드에서는
SearchModel.list(query).then(data =>{
this.onSearchResult(data)
})
부분에서 onSearchResult가 먼저 호출되고, 정의 되는 것은 코드의 마지막 부분입니다.
이도 저도 아니라면 뭐때문에 가능한건지 알고 싶습니다.
export default { init() {
FormView.setup(document.querySelector('form'))
.on('@submit', e => this.onSubmit(e.detail.input))
.on('@reset', e => this.onResetForm())
ResultView.setup(document.querySelector('#search-result'))
},
search(query){
//search api를 사용.
console.log(tag, 'search()', query);
SearchModel.list(query).then(data =>{
this.onSearchResult(data)
})
},
onSubmit(input){
console.log(tag, 'onSubmit()', input);
this.search(input)
},
onResetForm(){
console.log(tag, 'onResetForm()');
},
onSearchResult(data){
ResultView.render(data) //이 부분이 나중에 정의 되어도 상관 없는지?
}
}