0

我正在从我的 ApplicationRoute 中的 XboxLive 和其他服务加载数据,并希望使用命名的插座显示该信息。我将此StackOverflow 答案用作指南,但它不起作用。

小提琴在这里:http: //jsfiddle.net/sandalsoft/7xHfp/

在 中ApplicationRoutemodel钩子从在线服务加载数据。此数据可通过model.xboxmodel.facebook等访问... setupController然后将 的content设置XboxprofileControllermodel.xbox

这在我调用时不起作用App.Xboxprofile.find()(返回一个承诺),但在我调用时它确实起作用App.Xboxprofile.findSimple()(返回一个简单对象)。为什么 find() 有任何类型的异步时这不起作用?我是否遗漏了一些简单的东西,或者这不是构建它的正确方法?

谢谢

4

1 回答 1

0

感谢#emberjs 中的@alexspeller 提供答案。

我错误地认为 model.xbox 是一个承诺。它是一个对象。当我将模型挂钩更改为使用 RSVP.hash() 时,它运行良好:

model: function(controller)
        var allModels = Em.RSVP.hash({
            xbox: App.Xboxprofile.find('major nelson'),

        }).then(function(hash) {
            return Em.RSVP.hash(hash);
        });

        return allModels;
    },
于 2013-09-15T01:39:20.517 回答