2013-09-30 61 views
1

角指令可以在下面的圖形取代:與routeParams

.directive('currentStep', ['$log', function($log) { 
    return { 
     restrict: 'A', 
     link: function(scope, element, attrs){ 
      $log.log("tmsstep is: " + scope.tmsstep); 
      return attrs.currentStep === scope.tmsstep; 
     } 
    }; 
}]); 

要直接訪問routeParams類似(這似乎不工作):

.directive('currentStep', ['$log', '$routeParams' , function($log) { 
    return { 
     restrict: 'A', 
     link: function(scope, element, attrs){ 
      $log.log("tmsstep is: " + $routeParams.tmsstep); 
      return attrs.currentStep === $routeParams.tmsstep; 
     } 
    }; 
}]); 

的目的是爲了避免在$ scope和$ routeParams中都有tmsstep

+2

你缺少了'$ routeParams'參數,以此來指導方法正確的語法。 – Chandermani

+0

函數($ log)或函數(範圍,元素,attrs) –

回答

3

我沒有意識到你應該直接從指令修改DOM。只是返回真/假並不是我想要做的。 element.css('display',none)是需要的。

function($log, $routeParams)是爲指令的方法