2012-05-07 15 views
5

これはしばらく私を不調にしていましたが、私はそれを先に進め続けました。残念ながら、私は本当にこれが必要になる時が来た。EmberJSには、ハンドルバービューが更新された後に呼び出されるイベントがありますか?

私の質問は次のとおりです。EmberJS/Handlebarsは、ビューが更新されDOMに表示されたときに呼び出されるイベントを提供していますか?

私はこのイベントを使用してaddClass、sortableなどのjQueryを実行する必要があります。私はLive jQueryプラグインを使用しようとしましたが、Handlebarsでは機能しません。その上に、イベントはすでにどこかにあると言われていますが、私はそれを見つけることができません。

答えて

7

willInsertElementdidInsertElementwillRerenderの方法をEmber.Viewに表示しましたか?また、S.O.にはたくさんの投稿があります。 EmberとjQueryプラグインとフレームワークを統合することに取り組んでいます。

https://github.com/emberjs/ember.js/blob/master/packages/ember-views/lib/views/view.js#L1250-1267

編集/更新

少しバックやコメントで第四の後、最終溶液はEmber.run.nextを使用することでした。参照してください:http://jsfiddle.net/ud3323/SsRuX/

+0

これらのイベントでの問題は、 'willInsertElement'と' didInsertElement'は、ビューが更新されたときではなく、 'appendTo'を使ってDOMに追加されたときに一度だけ呼び出されるということです。 'willRerender'は実際には起動しますが、何かがDOMに追加される前に、jQueryの呼び出しは何もしません。 –

+0

あなたはStackOverflow上のポストへのリンクを持っていることでしょうか? –

+0

'afterRender'はどうですか?ビューはどのように更新されますか?それは財産の変更ですか?もしそうなら、あなたはそのプロパティを観察する必要があります。マウスイベントのようなイベントですか?共有できるコードはありますか?それは本当にあなたが正しい方向に向いているのを助けるでしょう... –

関連する問題