Я создал два компонента в Angular 2:
ReaderComponent: тот, который инициирует и контролирует все функции Owl Carousel (инициация, добавление слайда, удаление слайда и т. д.)
PageComponent: каждый слайд является PageComponent и имеет события для обработки ввода от пользователя (щелчок, сжатие, двойное касание).
ReaderComponent создается при запуске приложения и инициирует запрос к службе для получения всех данных для каждого из PageComponents. Все работает нормально, пока мы не добавим слайд, который является PageComponent. Я попытался добавить селектор PageComponent в сову карусель:
this.slider.trigger("add.owl.carousel", ["<my-page-component></my-page-component>"]);
Это добавляет элемент <my-page-component>
, но не отображает шаблон и не обрабатывает какие-либо события PageComponents.
Я попытался добавить все компоненты страницы в массив и отобразить его в шаблоне ReaderComponents:
<div *ng-for="#page of pages">
<my-page></my-page>
</div>
Это отображается правильно, но к тому времени все страницы отображаются, Owl уже инициирован, и страницы не видны.
Итак, резюмируя все это: мне нужно знать, как добавить пользовательский компонент через javascript (в данном случае добавление функций Owl)? Это вообще возможно? Или есть другой способ справиться с этим, чтобы я мог каким-либо образом добавить PageComponent?