Tôi đang cố gắng cập nhật chế độ xem của mình bất cứ khi nào tôi thêm mô hình mới vào bộ sưu tập của mình. Câu hỏi đầu tiên của tôi là để tôi tự động thêm một mô hình vào bộ sưu tập của tôi khi tôi lưu mô hình đó, như:Bộ sưu tập thêm trình xử lý sự kiện vào Backbone
PostsApp.Views.Form = Backbone.View.extend({
template: _.template($('#form-template').html()),
render: function(){
this.$el.html(this.template(this.model.toJSON()));
},
events:{
'click button' : 'save'
},
save: function(e){
console.log("is this working");
e.preventDefault();
var newname = this.$('input[name=name-input]').val();
var newadress = this.$('input[name=adress-input]').val();
this.model.save({name: newname, adress : newadress});
}
});
hay tôi vẫn phải làm collection.add()
Ngoài ra để xem mô hình mới trong quan điểm của tôi, tôi đang cố gắng để thêm một 'thêm' sự kiện người nghe như thế này:
PostsApp.Views.Posts = Backbone.View.extend({
initialize: function(){
this.collection.on('add', this.addOne, this);
},
render: function(){
this.collection.forEach(this.addOne, this);
},
addOne: function(post){
var postView = new PostsApp.Views.Post({model:post});
postView.render();
this.$el.append(postView.el);
}
});
doesnt làm việc không chỉ này, nhưng khi tôi thêm các phương pháp khởi tạo, nó chỉ là bản sao tất cả mọi thứ trong mô hình của tôi khi trang được tải đầu tiên.
nhờ nơi nên collection.create này ({model}); trong mã của tôi? –
Vì vậy, về cơ bản bạn sẽ chuyển vào bộ sưu tập tới 'subView' và trong phương thức save của' subView', bạn sẽ cần sử dụng nó –
Tôi đoán trong phương thức save, vì vậy khi tạo một formview mới, tôi phải chuyển vào một bộ sưu tập thay vì một mô hình? –