链接到子路由但在父路由上具有活动类

时间:2015-08-08 16:12:01

标签: ember.js ember-cli

我有一个导航栏项目

{{#link-to 'customer'}}

点击后,我希望它路由到customer.details路线。我现在可以通过将customer路由重定向到customer.details来实现此目的。但是,如果在customer.details路线内,如果我点击导航中的链接,则转换为customer路线,而不是将其发送到customer.details。在转换到路径链时,没有像redirectactivate或模型之前/之后那样的路径函数触发。

的另一个选项
{{#link-to 'customer.details'}}

意味着任何其他customer.routename都不会继承活动类。

我错过了什么吗?感谢。

2 个答案:

答案 0 :(得分:1)

因此,编辑KerrickLong帮我解决了这个问题:

  

尝试在customer.index上实时重定向到customer.details   路线而不是直接在客户路线上。

     

完美无缺!

答案 1 :(得分:1)

我的链接是在Ember 2.0上使用Goobi上面的解决方案。

在我的路由器中我有:

this.route('event', {path: '/:eventShortName'}, function(){
    this.route('index', {path: '/'});
    this.route('new-article', {path: 'new-article'});
    this.route('page', {path: ':articleTitle'}, function(){
      this.route('data', {path: ':dataId'});
    });
  });

每当我访问event.page.data时,导航栏中的所有链接都将处于活动状态。

修复前:

{{#link-to 'event.page' article.articleURL class="nav-dynamic hidden-xs" tagName="li" href=false}}
   {{#link-to 'event.page' article.articleURL }}
      {{article.articleTitle}}
   {{/link-to}}
{{/link-to}}

修复后:

{{#link-to 'event.page.index' article.articleURL class="nav-dynamic hidden-xs" tagName="li" href=false}}
   {{#link-to 'event.page.index' article.articleURL }}
      {{article.articleTitle}}
   {{/link-to}}
{{/link-to}}

功能保持不变,现在访问数据网址时没有链接处于活动状态。