0

私は backbone.js を使用しており、モデル - ビュー - コントローラー構造を学びながら厳密に維持しようとしています。ビューの 1 つにリンクの onclick 関数がありますが、どこに配置すればよいかわかりません。これをビューのレンダリング機能に保持するのに最適な場所はありますか?

ありがとう

より具体的には、onclick は facebook ログインを実行し、ユーザーが現在データベースにいない場合はデータベースに追加します。これで何かが変わるかどうかはわかりません。

ここに私が行くと思うものがあります:

 var NewUserView = Backbone.View.extend({
    el: $('#window'),
    render: function(){
      // Render

      this.listeners();
    },
    listeners: function(){
      // onclick and other listeners
    }
  });
4

3 に答える 3

1

バックボーンのドキュメントから:

バックボーンでは、Viewクラスは一種のコントローラーと考えることもでき、HTMLテンプレートが実際のビューとして機能し、UIから発生するイベントをディスパッチします。これをビューと呼びます。これは、単一のDOM要素のコンテンツを担当するUIの論理チャンクを表すためです。

バックボーンでイベントを処理する一般的な方法は次のとおりです。

var NewUserView = Backbone.View.extend({
    el: $('#window'),

    render: function() {
        // Render
    },

    events: {
        "click #facebookButton": "loginViaFacebook"
    },

    loginViaFacebook: {
        // Perform facebook login and add user to database
    }
});
于 2013-01-03T19:35:19.253 に答える
0

リンクをどこに表示しますか? オンViewページですよね?したがって、viewリンクを表示する場所と同じ場所に保管する必要があります。

ただし、単なる Web アプリケーションではなくアーキテクチャを構築する場合は、onclick関数を別のファイルに配置して、これらすべての関数をview保持し、必要に応じてインポートするか、別のファイルに保持してbundlingインポートする必要があります。ページにview

于 2013-01-02T05:33:27.050 に答える
-1

ファイルを作成し、そのファイルにすべての関数を記述し、そのファイルをビュー ファイルに含め、アンカー タグで onClick を使用してください。これが理にかなっているかどうか教えてください。

于 2013-01-02T05:36:12.670 に答える