2013-08-27 166 views

回答

-1

这是一个彻头彻尾的黑客,但它在Ember 1.0.0中起作用。生成链接到用户保持活跃,当用户路由活跃:

App.UserRoute = Ember.Route.extend({ 

    activate: function() { 
     setTimeout(function() { 
      $('[href="#/users"]').addClass("active"); 
     }, 0); 
    } 
}); 
5

您可以重新打开Ember的LinkView,做这样的事(让currentWhen包含空格分隔值)

Ember.LinkView.reopen({ 
    active: function() { 
     // we allow link-to's currentWhen to specify multiple routes 
     // so we need to check each one of them 
     var loadedParams = Ember.get(this, 'loadedParams'); 
     var currentWhen = this['current-when'] || this.currentWhen; 
     currentWhen = currentWhen || (loadedParams && loadedParams.targetRouteName); 

     if (currentWhen && currentWhen.indexOf(' ') >= 0) { 
       var currents = currentWhen.split(' '); 
       router = Ember.get(this, 'router'); 

      for (var i = 0; i < currents.length; i++) { 
       var isActive = router.isActive.apply(router, [currents[i]]); 
       if (isActive) 
        return isActive; 
      } 

      return false; 
     } 

     return this._super(); 
    }.property('resolvedParams', 'routerArgs') 
}); 
+0

并开始与Ember 1.8,您可以设置当前时间 - 以空格分隔的路线! –

+0

这应该用Ember App Kit来定义? – alexmngn

相关问题