Estou tentando fazer algo que acredito ser possível, mas realmente não consigo entender como fazê-lo apenas a partir da documentação do webpack.
Estou escrevendo uma biblioteca JavaScript com vários módulos que podem ou não depender um do outro. Além disso, o jQuery é usado por todos os módulos e alguns deles podem precisar de plugins do jQuery. Essa biblioteca será usada em vários sites diferentes, que podem exigir alguns ou todos os módulos.
Definir as dependências entre meus módulos foi muito fácil, mas definir suas dependências de terceiros parece ser mais difícil do que eu esperava.
O que eu gostaria de alcançar : para cada aplicativo, quero ter dois arquivos de pacote configurável, um com as dependências de terceiros necessárias e outro com os módulos necessários da minha biblioteca.
Exemplo : Vamos imaginar que minha biblioteca tenha os seguintes módulos:
- a (requer: jquery, jquery.plugin1)
- b (requer: jquery, a)
- c (requer: jquery, jquery.ui, a, b)
- d (requer: jquery, jquery.plugin2, a)
E eu tenho um aplicativo (veja como um arquivo de entrada exclusivo) que requer os módulos a, bec. O Webpack para esse caso deve gerar os seguintes arquivos:
- pacote de fornecedores : com jquery, jquery.plugin1 e jquery.ui;
- pacote de sites : com os módulos a, bec;
No final, eu preferiria ter o jQuery como global, para não precisar exigi-lo em todos os arquivos (só poderia ser exigido no arquivo principal, por exemplo). E os plugins jQuery estenderiam apenas $ global caso sejam necessários (não é um problema se estiverem disponíveis para outros módulos que não precisam deles).
Supondo que isso seja possível, qual seria um exemplo de um arquivo de configuração do webpack para este caso? Tentei várias combinações de carregadores, externos e plugins no meu arquivo de configuração, mas realmente não entendo o que eles estão fazendo e quais devo usar. Obrigado!