这让我困惑了一段时间,但我设法继续推动它前进。不幸的是,我真的需要这个的时候到了。
我的问题是:EmberJS/Handlebars 是否提供了一个在视图更新并在 DOM 中可见时被调用的事件?
我需要使用这个事件来运行一些 jQuery 的东西,比如 addClass、sortable 等。我尝试过使用 Live jQuery 插件,但它不适用于 Handlebars。最重要的是,我假设所说的事件已经在某个地方,我似乎找不到它。
这让我困惑了一段时间,但我设法继续推动它前进。不幸的是,我真的需要这个的时候到了。
我的问题是:EmberJS/Handlebars 是否提供了一个在视图更新并在 DOM 中可见时被调用的事件?
我需要使用这个事件来运行一些 jQuery 的东西,比如 addClass、sortable 等。我尝试过使用 Live jQuery 插件,但它不适用于 Handlebars。最重要的是,我假设所说的事件已经在某个地方,我似乎找不到它。
您看过willInsertElement
,didInsertElement
和willRerender
中的方法Ember.View
吗?此外,这里有很多关于 SO 的帖子涉及将 jQuery 插件和框架与 Ember 集成。
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/