2013-08-27 12 views

Trả lời

-1

Đây là tổng số hack, nhưng nó hoạt động trong Ember 1.0.0. Để tạo liên kết cho người dùng ở lại hoạt động khi các tuyến đường sử dụng đang hoạt động:

App.UserRoute = Ember.Route.extend({ 

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

Bạn có thể mở lại LinkView Ember và làm điều gì đó như thế này (cho phép currentWhen để chứa không gian giá trị giới hạn)

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

Và bắt đầu với Ember 1,8, bạn chỉ có thể thiết lập hiện tại-khi với một sting không gian giới hạn của các tuyến đường! –

+0

Trường hợp này nên được xác định bằng cách sử dụng Ember App Kit? – alexmngn