我在这里发了一篇文章,说要使用Twitter Bootstrap的导航栏和Ember和Handlebars,以便<li>
自动获得'active'类,我可以这样做:
{{#link-to 'dashboard' tagName="li" href=false}}
{{#link-to 'dashboard'}}
Dashboard
{{/link-to}}
{{/link-to}}
但是,我只启用了Ember的LOG_TRANSITIONS,它向我显示导航栏中的链接转换为两次。
如何使用Handlebars正确渲染导航栏列表并避免此双重加载?
答案 0 :(得分:11)
问题在于link-to
路由有两个dashboard
。
您有两种选择:
使用li
标记中的链接:
{{#link-to 'dashboard' tagName="li" href=false}}
<a href="#">Dashboard</a>
{{/link-to}}
在内部链接中使用bubbles=false
:
{{#link-to 'dashboard' tagName="li" href=false}}
{{#link-to 'dashboard' bubbles=false}}
Dashboard
{{/link-to}}
{{/link-to}}
因此事件不会传播。