Пользовательская директива AngularJS, основанная на выражении класса

0

Я пытаюсь использовать вложенные пользовательские директивы для создания полной формы опроса. Пользовательский тег опроса содержит повторяющиеся теги групп, которые содержат повторяющиеся теги. Различные типы вопросов будут обрабатываться отдельными директивами на основе их идентификатора типа. Директивы вопроса ищут элементы с классом, который соответствует идентификатору типа вопроса.

<div ng-repeat='q in g.questions track by $index' class='{{q.squt_id}}'>...</div>

Я считаю, что проблема заключается в том, что выражение оценивается после применения директив. Любые мысли или идеи здесь? Я заблокирован в использовании идентификатора типа как уникальный способ определения типов вопросов.

app.directive('1',function() {
  return {
    restrict: 'C',
    ...
  }
});
Теги:
angularjs-directive

1 ответ

0
Лучший ответ

Вы можете создать базовую директиву, использовать ее для каждого типа и передать идентификатор типа в качестве параметра. Затем в директиве вы можете создать switch, используйте ng-if, динамически добавьте имя директивы типа в шаблон базовой директивы или что-нибудь еще.

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

  • 1
    Вы можете динамически добавлять директивы (через атрибуты и классы) , однако это потребовало бы , чтобы они отказаться от обычного процесса включения путем использования $compile службы в их link функции. Это совсем не тривиальная задача, поэтому ваше предложение, вероятно, лучше подходит для его проблемы.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню