Wie verwende ich jquery-ui in einer Backbone.js-Ansicht?

8

Ich bin neu bei Backbone.js. Ich habe eine Ansicht für eine Schaltfläche erstellt, die bereits auf der Seite vorhanden ist. Ich wende jquery-ui auf die Schaltfläche an, wenn die Ansicht initialisiert wird:

%Vor%

Diese Methode funktioniert, aber ich frage mich, ob es einen einfacheren Selektor gibt, den ich verwenden könnte als $(this.el.selector) ? Zuerst dachte ich, ich könnte el.button(); machen, aber das funktioniert nicht.

Oder gibt es einen besseren / einfacheren Weg, sich dem ganzen Prozess zu nähern?

    
xcer 09.12.2011, 00:30
quelle

1 Antwort

10

Ich kann Ihnen versichern, dass el.button(); funktioniert aber ...

Sie müssen daran denken, wenn Ihr View-Jquery-Selektor ausgeführt wird.

Wenn Sie es wie gewohnt eingeben, wird Ihr jQuery-Selektor beim Analysieren des Ansichtscodes ausgeführt. Das heißt, das passiert meistens, wenn dein Dom nicht bereit ist, zu laden.

Sie können die el später am besten so übergeben:

%Vor%

Nun wird Ihre Ansicht in Dokument bereit gestellt, das Button-Element wird übergeben, weil das dom bereit war und Ihr Selektor in das Button-Element aufgelöst wird. und Sie können gerne el.button(); verwenden, um etwas darauf anzuwenden.

Beispiel: Ссылка

Bearbeiten

Eine andere Möglichkeit, dies zu tun, besteht darin, Ihren Elementselektor als El-Argument zu definieren und ihn nur so auszuführen, wie Sie es getan haben.

%Vor%

Dies funktioniert auch, aber Sie können diese Ansicht nur auf Ihrer gegebenen Schaltfläche verwenden, wenn Sie sie nicht überschreiben. Das erste Beispiel ist sauberer für die Wiederverwendung von Code. Sie könnten es 3-mal instanziieren und jede von ihnen könnte übergeben werden ein weiterer Knopf um ...

Beispiel: Ссылка

Nebenbemerkung Angenommen, ich würde vorschlagen, die render-Methode zu verwenden. Sie können dies in der init tun, aber ich glaube, dass die Render-Methode die ist, die dies behandeln sollte.

%Vor%     
Sander 09.12.2011, 01:05
quelle

Tags und Links