バックボーンの使用を開始したばかりです(モジュールのrequirejsを使用)。
jQuery でできることと Backbone でできることの間には重複があるように思えます。これにより、どのオプションを使用すべきか疑問に思います。
たとえば、次の方法でイベントを聞くことができます。
$('selector').click( function(event) {...
また
var myView = Backbone.View.extend({
events: {
"click selector": "onClickSelector",
}, ...
1)上記のオプションのどれを使用する必要がありますか?
Jquery は、Backbone で管理する方法がわからないことをサポートしています。たとえば、JqueryUI のオートコンプリート機能:
$('selector').autocomplete({ ...
2)バックボーンを使用してオートコンプリートを実装するにはどうすればよいですか? ビューがレンダリングされた後、メソッドでこれをすべて行うだけonPostRender()
ですか?
View オブジェクトに新しいメンバーを追加しているように見える例がたくさんあります。例えば:
var myView = Backbone.View.extend({
events: {
deletePressed: function() { ... },
submitPressed: function() { ... },
editPressed: function() { ... },
}, ...
これらのイベントの機能が単純であれば、これは理にかなっていることがわかりますが、動作がより複雑になると、View オブジェクトは非常に複雑になります。
3)無名関数で複雑な動作を実装する必要がありますか、それとも名前付き関数を呼び出す必要がありますか?
4)上記と似ていますが、多くのイベント ( などresetForm()
) で使用される共通関数がある場合、これは名前関数のビューのメンバーとして宣言する必要がありますか?
現在、jquery オブジェクトを変数としてモジュールに格納しています
var $mySelector = $(selector);
または、それらをビューに添付できます
var myView = Backbone.View.extend({
initialize: {
this.mySelector = $(selector);
}, ...
5) JQuery オブジェクトをビューの一部にするか、AMD モジュールの一部にするか: