Backbone.js işlevinin render
işlevindeki bazı olaylara bağlanıyorum, daha spesifik olarak click
, ancak çalışamıyorum. Benim omurga görünümünün olaylar bölümü içinbackbone.js tetikleyici olayları render()
App.ProductView = Backbone.View.extend({
className: 'title_products_tab',
el: $('.title_products_tab'),
events: {
'click .product_list .edit_product' : 'edit',
:
Ben benzer (ama çok basitleştirilmiş) kurulumu var.render: function(){
console.log($._data($('.title_products_tab .product_list .edit_product')[0], "events"));
$('.title_products_tab .product_list .edit_product').trigger('click');
çalışmıyor Hangi element için _data
ben olay nedeniyle kalanı benim bakış fonksiyonlarının çalışır biliyorum, ancak, tanımsız: Aşağı hale işlev içinde ben bağlanmış .edit_product
click
olayı tetiklemek isteyen buna göre. Olayları render
veya başlangıçta başka bir yerde tetikleyemiyorum.
this.trigger('click .product_list .edit_product');
Ancak yine hiç şans işe yarar.
Ayrıca, bindAll
duydum ama bunu kullanmak için iyi bir fikir olmadığını duydum.
Omurga görünümüm için başlangıç olaylarını nasıl tetiklerim?
var View = Backbone.View = function(options) {
this.cid = _.uniqueId('view');
this._configure(options || {});
this._ensureElement();
this.initialize.apply(this, arguments);
this.delegateEvents();
};
Özellikle son bölümünü:
Eğer senin yöntemini hale aradığınız (Ben gerçekten bunu yapmanız şekilde yapmanız gerekiyorsa el
delegateEvents
diyebiliriz sanırım)? Başlatma yönteminde? – Loamhoof@Loamhoof Gerçekten, init yönteminde – Sammaye