현재 데이터를 가져올 때마다 단순히 함수를 실행하는 모델을 작성하려고합니다. 내가 아는 한, 올바른 방법으로 구현하고 있지만 예상대로 작동하지 않는다. 분에서백본 이벤트 맵이 작동하지 않습니다.
이 모델은 다음과 같습니다 fetch()
이의 인스턴스에서 호출 될 때마다
var MyModel = Backbone.Model.extend({
// fetch the data for this, on return, create modela about it
url: function() {
return 'api.example.com/users/' + this.id + '/intialisation';
},
events: {
reset: alert('this works')
},
makeItems: function() {
var newItems, currentInitialiser, currentItem;
alert('this does not');
}
});
은 경고 상자는 예상대로 '이 작품'나타납니다. 나는 실행되지 않습니다
events: {
reset: "makeItems"
}
또는
events: {
reset: this.makeItems
}
함수에 이벤트 맵을 변경하는 경우에는, (당신은 '이 작동하지 않는'경고 상자가 표시되지 않습니다). 아마도 이것이이 이벤트 맵의 작동 방식에 대한 오해 때문일 수 있습니다.하지만 실제로 작동하는 이런 것들을 보았고 이것이 왜 발생하지 않는지 알 수는 없습니다. 백본 문서를 살펴 봤지만 그 내용은 설명 적이 지 않습니다. 그러나 필자가 이해하는 한, 필자가 작성한 문서는 작동해야합니다.
는 희망이
덕분에 많이 분류 너무 까다로운되지 않습니다.
경고 ('this works')가 어떻게 작동 했습니까? –
아주 좋은 질문입니다. MyModel을 실제로 정의한 경우를 제외하고 코드를 복사하면 작동하지 않습니다. 그러나 MyModel의 인스턴스는 이벤트를 시작하지 않습니다. – damienc88
나는 어리 석다 고 생각한다. 나는 경고의 끝 부분에 브래킷을 남겨 두었으므로 함수가 실제로 호출되어 결과가 맵에 전달됩니다. –