0

在我的 application.hbs 文件中,我有一个应用程序范围的导航栏。

<div class="row nav">
<div class="large-12 colummns">
    <ul class="inline-list top-nav">
            <li><h6>{{#linkTo "about.philosophy"}}ABOUT{{/linkTo}}</h6></li>
            <li><h6>//</h6></li>
            <li><h6>CONDITIONS</h6></li>
            <li><h6>//</h6></li>
            <li><h6>PROGRAMS</h6><li>
            <li><h6>//</h6></li>
            <li><h6>TESTIMONIALS</h6></li>
   </ul>
</div>
</div>
<div class="row subnav">
    <div class="large-12 colummns">
      {{#if renderAboutSubNav}}
        {{render 'about/subnav'}}
      {{/if}}
  </div>
</div>
{{outlet}}

subnav.hbs:

<ul class="inline-list subnav-list">
  <li class="subnav-item">{{#linkTo "about.philosophy"}}philosophy{{/linkTo}}</li>
  <li class="subnav-item">//</li>   
  <li class="subnav-item">{{#linkTo "about.leadership"}}leadership{{/linkTo}}</li>
  <li class="subnav-item">//</li> 
  <li class="subnav-item">staff</li>
</ul>

单击“关于”链接时,会显示一个子导航——只要 url 包含“关于”,就会显示。在那个子导航中是关于子页面的——哲学、领导力、员工。Philosophy 实际上是 about 部分的索引页,这就是我将 ABOUT 链接到 about.philosophy 的原因:

{{#linkTo "about.philosophy"}}ABOUT{{/linkTo}}

当我单击“关于”时,ember 应用程序按预期呈现 /about/philosophy,并且子导航中的“关于”链接和哲学链接设置为活动状态。

但是,当我单击“领导”时,子导航中的领导链接处于活动状态,但主导航中的“关于”链接不是活动的,即使 URL 显示为 /about/leadership。

我不明白它为什么这样做。

我的路由器是这样的:

Ew.Router.reopen(location: 'history')

Ew.Router.map ->
@.resource "about", ->
    @.route "philosophy"
    @.route "leadership"
    @.resource "staff"
@.route "conditions"
@.route "programs"
@.route "testimonials"

关于.hbs:

<div class="row about-bg">
<div class="large-12 columns">
    <div class="row">
        <h1 class="about-phil">Eskridge & White</h1>
  </div>
</div>
</div>
<div class="row philosophy-content">
<div class="large-9 columns about-us">
{{outlet}}
</div>
</div>
<div class="large-3 columns sidebar">
    {{partial 'sidebar'}}
</div>
</div>
4

1 回答 1

4

这里的问题是您链接到about.philosophy,因此当您导航到about.leadership活动课程时将不会应用。

所以做你link-to的指向about路线,
{{#link-to "about"}}ABOUT{{/link-to}}

并从您的about.index路线重定向到about.philosophy路线,以便每当您在路线的孩子中时
,活动类将始终应用于about's 。link-toabout

适合您的箱子

于 2013-09-10T04:29:52.260 回答