我想在应用程序进入root状态时加载数据或执行一些计算,任何想法如何实现它? 最佳答案 我不确定你的问题是什么,因为控制器没有状态,所以我猜你在这里谈论路线.
如果要在进入根状态时加载数据,则该功能尚未实现,但可能会更晚.
看看这个问题:Controller instances not available in connectOutlets of root state.,我认为这正是你的问题.
在实现此功能之前,您仍然可以:
>在ApplicationController #init方法中加载数据
>添加包含所有其他路由(root.all)的路由,并在所有路由的connectOutlets方法中加载数据(我不喜欢这个解决方案)
>通过执行此操作来查看路由器的applicationController属性(请参阅this JSFiddle):
App.Router = Em.Router.extend({
loadData: function() {
// load data here
}.observes('applicationController'),
});