我正在关注 Ember 2.3 的文档,但似乎无法在任何地方找到一些非常基本的东西:如何访问主模板内路由模型 Hook 提供的值:application.hbs
?
routes/client.js
// ...
export default Ember.Route.extend({
model() {
return {
navigation: [
{
title: "Projects",
link: "projects"
},
{
title: "My Specifications",
link: "specs"
}
]
}
}
});
templates/application.hbs
<nav>
{{#each navigation as |navItem|}}
<li>{{#link-to navItem.link}} {{navItem.title}} {{/link-to}}</li>
{{/each}}
</nav>
{{outlet}}
现在,导航对象可供路由模板 (client.hbs
) 访问,但不能供应用程序模板访问。
最佳答案
这是如何完成的(除非 ember 在未来的版本中提出更好的方法):
routes/client.js
// ...
export default Ember.Route.extend({
setupController() {
this.controllerFor('application').set('navigation', ["nav1", "nav2"]);
}
});
谢谢 Ivan 的回答!
关于javascript - 如何从 Ember 应用程序模板中的路由访问数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35182650/