В нашей компании есть библиотека, которая разделена на модули.Эти модули находятся в отдельных файлах, и каждый из этих модулей имеет свои зависимости от других модулей.Каждый модуль имеет функцию определения, которая регистрирует его для других модулей, чтобы использовать его позже, а также он может требовать других модулей в своей функции определения.Требование аналогично угловому:
modules.require(['authentication', 'data', 'http'], module => console.log('Here is my module: ', module).
В библиотеке имеется класс Synchronizer, который на основе этого требования в каждом модуле обрабатывает импорт и предоставление необходимых модулей.Когда модуль еще не требуется, он создает тег <script>
, устанавливает его src для требуемого файла модуля и добавляет его в тело.
Вот проблема, потому что если я просто импортирую основнойфайл моей библиотеки и попробуйте запросить какой-нибудь модуль, он добавляет тег <script>
, но путь к файлу неверный, потому что он все связан вместе с помощью веб-пакета.
Есть ли способ в веб-пакете,заявить, что эта папка (папка с плагином) должна оставаться как есть, чтобы я мог затем делать запросы к отдельным файлам в этой папке?
Я пытался использовать оператор "import", "require"а также я пытался изменить библиотеку в пакет npm, но мне не разрешено менять библиотеку, потому что она была протестирована в этом формате.Поэтому лучше всего сохранить библиотеку как есть.
Например, если я помещу эту библиотеку в:
./static/js/mylibrary
, тогда наша библиотека может создать тег modules.require(['data'], onSuccess)
a <script>
с src вроде:
./static/js/mylibrary/data.js
Можно ли настроить веб-пакет так, чтобы файл оставался там?В развитии?В производстве?
Я использую проект, созданный vue-cli