0

MVCにbackbone.jsを使用するアプリから呼び出されているカスタムjQueryウィジェットがあります。カスタムjQueryウィジェットでバックボーンイベントパターンを使用するにはどうすればよいですか?

function( $ ) {
  $.widget( "medex.chooser", {
  ...
  _create: function() {
      // Would I create a new backbone view here???
  }
}

ありがとう。

4

2 に答える 2

0

カスタムウィジェットによって呼び出されるカスタムビューを定義する必要があると思います。

アプリの初期化コードでは、次のようになります。

APP = {};          // your app's global object
APP.Views = {};

APP.Views.WidgetView = Backbone.View.extend(
{
    events: {
        "click .grid1" : "onGrid1Click"
    },

    initialize: function() {
        // code here
    },

    onGrid1Click : function(evt) {
        // code here
    }
});

次に、これがウィジェットのコンストラクターコードになります。

function Widget(element) {
   this.view = new APP.Views.WidgetView({ el: element });
}

このコードは完全に有効ではないかもしれませんが、あなたが探していた構造のアイデアをあなたに与えるはずです。Lemmeはこれがあなたのために働くかどうか知っています。

于 2012-07-05T22:29:07.827 に答える
0

それでも答えを探している場合は、ウィジェットをビューに変換できます。ウィジェットからビューに変換するための基本的なルールは次のとおりです。

  • _createは初期化されます
  • this.elementはthis。$elになります
  • 更新はレンダリングになります
  • 破壊は削除になります
  • $('。someDiv')。myWidget()は新しいMyView({el:$('。someDiv')});になります。
  • オプションはコンストラクターパラメーターになる必要がありますが、いくつかの異なる方法で処理できます
于 2014-07-03T17:16:52.997 に答える