в реактивной форме (компоненты библиотеки DevExtreme).
Есть необходимость сделать две вещи:
1) с помощью структурной директивы, применяемой к элементу, обернуть его в некий фрагмент html
2) связать свойство isValid данного элемента с состоянием валидности контрола формы - это делается с помощью атрибутной директивы
Изначально было желание сделать это с помощью одной структурной директивы, которая бы:
- с одной стороны, оборачивала исходный элемент в некий кастомный компонент, куда элемент попадает как ng-content
- с другой стороны в конструкторе также запросить NgControl и прочитать его состояние валидности, и дать знать элементу:
constructor(
@Self() private formControl: NgControl,
) { }
Проблема в том, что при использовании структурной директивы типа *wrapperDirective внедрение NgControl в конструкторе не срабатывает, поскольку он уже относится к шаблону, а не к хост элементу.
Есть ли возможность как-то преодолеть это, и всё-таки сделать одну директиву, которая будет делать всё в одном месте?
может компонент
Обсуждают сегодня