Добавил ангулар компонент согласно инструкции
https://academy.creatio.com/docs/7-18/developer/development_tools/packa…
Все работает.
НО! Если добавить несколько разных компонентов таким способом, то работает только первый, который открылся. При открытии второго уже ошибка.
В процессе анализа выяснилась причина:
При подгрузке и срабатывании кода во втором компоненте вызывается метод ngDoBootstrap из первого модуля. Соответственно второй компопент не регистрируется через createCustomElement.
Возможная причина такого поведения:
Билд компонента добавляет в main.js все зависимости в том числе собранное ядро ангулара.
При этом в стандартных компонентах (чаты, диаграма зависимостей, сводная таблица и т.д.) ядра в файле нет, но в bootstrap.js прописана зависимость от ядра (deps: ["ng-core"]).
Как собрать компонент правильно, чтобы в нем не было кода ng-core, и указать зависимость от него, как в стандартных Terrasoft компонентах?
Нравится
Владислав, добрый день!
А как именно вы зарегистрировали компоненты?
Похоже ответ на ваш вопрос стоит искать в документации Angular Elements, поскольку именно эта функциональность и используется в приложении. Рекомендую ознакомиться с этими обсуждениями:
https://stackoverflow.com/questions/54108714/multiple-custom-element-de…
https://stackoverflow.com/questions/39756192/what-is-entrycomponents-in…;