Neste artigo você vai aprender a como rodar vários scripts de npm, com apenas um comando nos scripts configurados em package.json
Fala programador, beleza? Bora aprender mais sobre npm e scripts!
Temos duas maneiras de executar diversos scripts com npm em apenas um comando
Em todas elas vamos precisar a configuração de scripts no package.json, ou seja, criaremos um script para rodar múltiplos comandos
A primeira forma vai funcionar em SOs baseados em Unix, ou seja, Linux e afins
O comando completo é:
"nomedoscript": "npm run start & npm run serve"
Note que você precisa colocar o nome que deseja para o script, e separar os comandos por & (e comercial)
Aqui utilizamos o start e o serve, você deve substituir para os scripts de sua escolha
Se esta solução não funcionar, tente a seguinte abordagem:
"nomedoscript": "npm-run-all --parallel start serve"
Agora o comando é mais padronizado, apenas precisamos escolher o nome do script
E depois o nome dos comandos que devem rodar, após a utilização de npm-run-all
Note também que esta solução vai funcionar em todos os ambientes, inclusive em Windows
Caso a primeira alternativa tenha falhado de alguma maneira
Conclusão
Neste artigo você aprendeu a rodar vários scripts de npm em um único script
Criamos nosso script em package.json, como os outros individuais
Porém utilizamos abordagens diferentes para concatenar outros comandos
Resultando em uma execução paralela de vários scripts npm, a quantidade é indefinida, você que escolhe
Confira nossos cursos gratuitos no Youtube, com vídeos todos os dias!
Se inscreva e ative o sininho para receber as notificações e aprender mais ainda sobre desenvolvimento web!
Veja também nosso catálogo de cursos na Udemy, todos com exercícios e projetos práticos, nas mais diversas tecnologias
O link acima contém um cupom de desconto para os cursos!
Só um aviso pra quem leu e não sabe o que é npm-run-all.
O autor do post não disse, mas isso é um package separado, um CLI Tool que deve ser instalado a parte na máquina. Isso não vem nativamente.
obrigado pela contribuição Alberto!