1

可以替换以下模式:

.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

4

1 回答 1

3

我没有意识到您应该直接从指令修改 DOM。只是返回 True/false 不是我想要做的。element.css('display', none) 是必需的。

function($log, $routeParams)是指令方法的正确语法

于 2013-09-30T09:34:31.180 回答