2

мне действительно нужна помощь, решая следующие задачи:динамическая директива: templateUrl

я пытаюсь реализовать некоторые настройки для приложения, поэтому я хочу использовать UI-Bootstrap аккордеоне.


У меня есть следующий HTML-код:

<accordion close-others="oneAtATime"> 
    <accordion-group ng-repeat="group in groups" heading="{{group.groupTitle}}"> 
     <accordion-content></accordion-content> 
    </accordion-group> 
</accordion> 

DOM-в "гармошку" является div где ng-controller="AccordionController". В этом контроллере у меня есть переменная groups которая выглядит следующим образом:

$scope.groups = [{ 
     groupTitle: "title1", 
     templateUrl: "file1.html" 
    }, { 
     groupTitle: "title2", 
     templateUrl: "file2.html" 
    }]; // ... and so on 

accordionContent моя директива, которая должна давать различные templateURLs в зависимости от $index или groupTitle (не имеет значения).

В accordionContent -directive выглядит следующим образом:

settings.directive("accordionContent", function() { 
    return { 
     restrict: "E", 
     templateUrl: //**here is my problem** 
    }; 
}); 

Содержание также реализовал некоторые угловой материал, я читал, что это необходимо, чтобы рассматривать. (или нет?)

ответ

1

Я не верю, что вы можете так поступать. Однажды я пробовал себя, не работал, если я правильно помню.

Что вы можете сделать, это иметь статический HTML-страницу в директиве, а также в том, что HTML-странице, вы будете иметь:

<div> 
    <div class="slide-animate" ng-include="templateUrl"></div> 
</div> 

Где templateUrl переменные на вашем изолированном объеме (или не изолирован ..) в директиве accordion-content.

+1

Я сделал это с помощью 'div' и' ng-include = "group.templateUrl" 'в' ng-repeat' - Спасибо вам большое! – Ba5t14n

Смежные вопросы