2
내 컬렉션에 라우터에 추가 한 샘플 데이터를 추가 할 때만 발생하는 '추가'이벤트를 수신하는 이벤트 리스너가 있지만 내가보기에 더 많은 모델을 추가, 모두를위한 코드는 다음과 같습니다 :백본 컬렉션 '추가'이벤트가 실행되지 않음
컬렉션 :
Application.Collection.extend({
name: "todos/todos",
initialize: function() {
this.on("add", console.log("added"));
},
url: "/todo-application/todos"
});
라우터 (이 이벤트를 발생) :
collection = new Application.Collections["todos/todos"]();
var m = new Application.Model({
title: 'Finish screencast',
done: true
});
collection.add(m);
보기 (이 발생하지 않습니다 이벤트) :
Application.View.extend({
name: "todos/index",
events: {
"submit form": function(event) {
event.preventDefault();
var attrs = this.serialize();
this.collection.add(attrs);
this.$('input[name=title]').val('');
}
}
});
모델이 컬렉션에 추가되고 화면에 표시, 아직 샘플 데이터를 추가 할 때 컬렉션은 초기 pageload에 나에게 console.log()
을 제공으로 확실히 작동보기의 collection.add
.. .
편집 :
이벤트가 실제로 발사하지만, 어떤 이유로이 이벤트가 작동하지 않는 바인딩, 나는 this.listenTo
대신 .on
를 사용하여 시도 내 백본 크롬 확장에 따르면. 당신이 객체에 on
기능을 사용하면
당신이 컬렉션에 전달하는 보기? 예 : '새로운 뷰 ({collection : collection})' – ashley