0

ルーター状態内で処理されるイベントをトリガーするビューがあります。

<button {{action signUp this}} type="button" class="btn btn-primary">Sign-Up</button>

ここにハンドラーがあります:

signUp: (router, event) ->
    //how do I get an instance of the "View" class triggered an event?

event.context を使用して、View クラスのすべてのバインドされたプロパティを取得できますが、実際には、イベントをトリガーした View クラスの完全なインスタンスを取得したいと考えています。これを達成するためのヒントはありますか?

4

1 に答える 1

4

ビューで検証などを行いたい場合は、ビューでアクションを呼び出すことをお勧めします

// template
{{action signUp target="parentView"}}

経由してルーターにイベントを送信します

// view
signUp: function() {
    // validation etc
    App.router.send('signUp',context);
}

必要に応じて、コンテキストを操作して、現在のビュー(this)への参照を含めることもできます。

お役に立てば幸いです。

于 2012-08-08T20:10:09.653 に答える