Работаю над моим приложением Ember здесь, и все идет хорошо. Тем не менее, я столкнулся с проблемой непредвиденного поведения, и я не уверен в лучшем подходе к этой проблеме.Ember renderTemplate relay model
Проблема в том, что в определенном маршруте я хочу отобразить другой маршрут в другой выход. Однако другой маршрут, который я делаю в другой розетке, не сохраняет свою собственную модель.
Если я это сделать:
App.TestRoute = Ember.Route.extend({
model: function() {
return {
heading: "Test",
testContent: "This is test."
}
}
});
App.IndexRoute = Ember.Route.extend({
renderTemplate: function() {
this.render("test", {
outlet: "left"
});
this.render({
outlet: "right"
});
},
model: function() {
return {
heading: "Index",
indexContent: "This is index."
}
}
});
... и доступом к IndexRoute
, я ожидал бы TestRoute
«модель s быть воспроизводимой в TestRoute
» s шаблон, но модель только IndexRoute
«s является передается на оба шаблона.
Fiddle здесь: http://jsfiddle.net/3TtGD/1/
Как разрешить Ember использовать модель по умолчанию для маршрута без экспрессивно их объединить? Это кажется утомительным.
Кроме того, желательно иметь одинаковое название некоторых свойств модели, например {{heading}}
, но не обязательно.
Каков наилучший способ решения этой проблемы?
Спасибо за ваше время.
С наилучшими пожеланиями, dimhoLt
Я просто посмотрел на это и что Ember рекомендует вам установить другой контроллер для шаблона, который нуждается в другой модели, см .: [link] http://emberjs.com/guides/routing/rendering-a -template/Обычно я использую магазин, откуда вы можете обращаться к записям и к контроллеру с помощью 'setupController' – baerli
Это решило мою проблему. Благодаря! –