У меня есть вложенные шаблоны angular.js. Каждый шаблон имеет свою собственную директиву. На основе данных, переданных на ParentTemplate, angular.js должен вызывать соответствующую директиву.AngularJS использовать директиву-имя в области как строка
<div class="parent-template">
<div class="{{childTemplate}}"></div>
<div class="template1"></div>
</div>
Допустим, что $scope.childTemplate = template1
. Оба div оценивают одно и то же содержимое <div class="template1"></div>
, но только второй div вызывает директиву, чтобы показать шаблон, как ожидалось.
мне нужен динамический способ вызвать соответствующую директиву шаблона:
Вот директива для template1
angular.module('myApp').directive('template1', function(){
return {
restrict: 'C',
templateUrl: 'templates/template1.html'
}
});
директив для других шаблонов директив работают аналогично.
Основываясь на том, что показано, оба местоположения находятся в одном объеме, поэтому вы упростили пример html. Необходимо предоставить более подробную информацию об этих директивах и показать правильное гнездование. – charlietfl
отредактировал мой вопрос @charlietfl. Если я заменил {{childTemplate}} в div-elem на template1, все будет работать как исправлено. Переменная {{childTemplate}} просто не заменяется на правильное значение –
Где код директивы? Вы упомянули передачу данных в директиву, но ни один не показан. Html все еще показывает, что оба экземпляра 'childTemplate' находятся в одной области. Мы не можем воспроизвести или оценить вашу проблему с тем, что показано – charlietfl