Я работаю над библиотекой Angular с большим количеством модулей и компонентов, одним из которых является система загрузки плагинов.
Принцип работы системы загрузки плагинов основан на предположении, что проект, который ее импортирует (через npm), будет содержать каталог «plugins» с файлом «index.ts» в корне, а служба загрузки плагинов будет импортировать все компоненты экспортируются index.ts.
Я использую синтаксис импорта динамического модуля - оператор async import('...')
, который отлично работает, когда он указывает на файл, который там физически существует, но такого файла не будет в тот момент, когда я компилирую / публикуя мою библиотеку, она существует только на более позднем этапе, внутри проекта, который ее использует.
Как я могу «обмануть» Angular-компилятор, чтобы упаковать библиотеку без наличия ../../plugins
модуля и вместо этого извлечь плагины во время выполнения?