angular-route-сегмент: найти текущее местоположение routeSegmentProvider

Я пытаюсь найти текущее местоположение routeSegmentProvider пока я строю свои маршруты, потому что один из них не настроен должным образом. Могу ли я узнать свое текущее местоположение в дереве?

Вот в основном то, что я пытаюсь сделать...

   var routeProvider = routeSegmentProvider;
   $.each(parentNodes, function(index, parentNode) {
       routeProvider.within(parentNode.Segment);
   });

   //here is where I would like to check to see where I am at in the tree before I apply this
   routeProvider.within(node.Segment).segment(subNode.Segment, {
       default: subNode.Default == true,
       template: subNode.Template == undefined ? "" : subNode.Template,
       templateUrl: subNode.TemplateUrl == undefined ? "" : subNode.TemplateUrl,
       controller: node.Controller == undefined ? "" : node.Controller
   });

   routeProvider.root();

2 ответа

<span ng-bind="$routeSegment.name"/> 

При использовании routeSegment приведенный выше фрагмент кода представляет собой более простой способ найти текущий маршрут.

Я все равно заставил это работать. Вот мое решение:

        var currentLocation = null;
        $.each(parentNodes, function(index, parentNode) {
            currentLocation = routeSegmentProvider.within(parentNode.Segment);
        });

        if (currentLocation != null) {
            currentLocation.within(node.Segment).segment(subNode.Segment, {
                default: subNode.Default == true,
                template: subNode.Template == undefined ? "" : subNode.Template,
                templateUrl: subNode.TemplateUrl == undefined ? "" : subNode.TemplateUrl,
                controller: node.Controller == undefined ? "" : node.Controller
            });
        } else {
            routeSegmentProvider.within(node.Segment).segment(subNode.Segment, {
                default: subNode.Default == true,
                template: subNode.Template == undefined ? "" : subNode.Template,
                templateUrl: subNode.TemplateUrl == undefined ? "" : subNode.TemplateUrl,
                controller: node.Controller == undefined ? "" : node.Controller
            });
        }

        routeSegmentProvider.root();
Другие вопросы по тегам