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