Ich bin an einige Ereignisse in der render
Funktion von backbone.js binden, genauer gesagt eine click
, aber ich kann es nicht zur Arbeit bekommen.backbone.js trigger events in render()
Ich habe ein ähnliches (aber sehr vereinfacht) Set-up zu:
App.ProductView = Backbone.View.extend({
className: 'title_products_tab',
el: $('.title_products_tab'),
events: {
'click .product_list .edit_product' : 'edit',
Für die Ereignisse Abschnitt meiner Rückgrat Ansicht. Unten in der Render-Funktion Ich wünsche das gebundene .edit_product
click
Ereignis auszulösen:
render: function(){
console.log($._data($('.title_products_tab .product_list .edit_product')[0], "events"));
$('.title_products_tab .product_list .edit_product').trigger('click');
Welche nicht funktioniert, das _data
für das Element ist nicht definiert, aber ich weiß, dass die Veranstaltung funktioniert, weil der Rest meiner Ansicht Funktionen entsprechend. Ich kann einfach nicht Ereignisse in render
oder irgendwo anders beim Start auslösen.
Ich dachte:
this.trigger('click .product_list .edit_product');
aber funktionieren würde, wieder kein Glück.
Ich hörte auch über bindAll
, aber ich hörte, dass es keine gute Idee war, dies zu verwenden.
Also, wie kann ich, oder besser wann, Startup-Ereignisse für meine Backbone-Ansicht auslösen?
Wenn rufen Sie Ihre Methode machen? In der Initialisierungsmethode? – Loamhoof
@Loamhoof Tatsächlich, in der init-Methode – Sammaye