0
我有一个Ember.js路径,其中renderTemplate
允许控制器/模板由模型设置。我可以让新的控制器运行,但是当调用继承的方法时,会抛出关于没有引用路由中应该由model
方法提供的模型的错误。这里是路线:Ember.js重写控制器没有引用原始模型?
App.ActivityRoute = App.GameScreenRoute.extend({
model: function(params) {
var lessons = App.getLessons(),
lessonId = params.lesson_id,
activityId = params.activity_id,
lesson = lessons[lessonId],
activity = lesson ? lesson.activities[activityId] : null;
if(activity) {
return activity.load();
}
else {
return Promise.reject();
}
},
renderTemplate: function(controller, model) {
this.render(model.get("template") || "activity", {
controller: model.get("controller") || "activity"
});
}
});
当model.controller === undefined
,所使用的控制器是ActivityController
,它的由model
方法返回的模式提供,但如果我设置model.controller
到另一个控制器,不同的控制器不具有参考到由model
方法返回的模型。
有什么我失踪或不理解?任何帮助将不胜感激。
谢谢。这工作很好。 – SimpleJ