我有一个模板,循环遍历所有导航链接的数组。但是我想使用ember linkTo helper来获取我的链接。
我的模板:
<script type="text/x-handlebars" id="_sideNav">
<div id="sideNav">
<ul>
{{#each model.sideNav}}
<li>{{link}}
<a>
<i {{bindAttr class="iconClass"}}></i><p>{{label}}</p>
</a>
</li>
{{/each}}
</div>
</script>
我的模特:
[
{
"label": "Overview",
"iconClass": "icon-overview",
"link": "{{#linkTo Overview}}Hello{{/linkTo}}"
}, {
"label": "Posts",
"iconClass": "posts",
"link": "{{#linkTo totalEnergy}}Hello{{/linkTo}}"
}
]
你可以看到我已经在我的模型中放置了linkTo助手,这没有用,当然我的文字“{{#linkTo totalEnergy}} Hello {{/ linkTo}}”出现在我的页面上。
但我认为你可以看到我想在这里得到的东西,我认为能够使用模板生成其他模板真的很有帮助。我的实际导航有12个以上的链接,这些链接根据服务器数据和页面上的相关内容而变化。
我觉得我可以破解它以使其工作,通过不会初始化ember应用程序,直到一些把手模板运行,但我想知道是否有人有更好的主意。
由于
答案 0 :(得分:1)
我认为更简单的是返回关于链接的元数据,例如:
App.MenuController = Ember.ArrayController.create({
content: [
{"route": "student", "title": "Student Info Page"},
{"route": "payments", "title": "Payments and Pricing"},
{"route": "policy", "title": "Mine"},
{"route": "biography", "title": "About Me"}
]
});
然后使用以下命令在模板中设置:
{{#each routeObject in App.MenuController}}
{{#linkTo routeObject.route}}{{routeObject.title}}{{/linkTo}}
{{/each}}
但要启用linkTo
与某个对象的绑定。需要设置:
Ember.ENV = {
HELPER_PARAM_LOOKUPS: true
}
答案 1 :(得分:0)
您可以为链接创建另一个模板,并使用'render'帮助程序为每个链接传递模型