javascript - via - Executando Scripts NPM Sequencialmente




script nodejs (3)

Após a ótima answer @ Mobiletainment, você também pode usar o npm-run-all para tornar o comando muito mais curto e muito mais legível. No seu caso:

"scripts": {
    ...
    "build": "run-s pre-build build_logic post_build exit"
}

run-s é um atalho que o npm-run-all fornece, que executa todos os scripts npm fornecidos seqüencialmente, daí o -s ( run-s é uma versão mais curta do npm-run-all -s ).

Digamos que eu tenho

"scripts": {
    "pre-build": "echo \"Welcome\" && exit 1",
    "build_logic": "start cmd.exe @cmd /k \"yo esri-appbuilder-js:widget && exit 1\"",
    "post_build":  "start C:\\WebAppBuilderForArcGIS\\startupShortcut",
    "exit" : "start cmd.exe @cmd /k \"echo \"goodbye\" && exit 1\""
  },

Qual comando do NPM posso executar para permitir que todos esses scripts sejam iniciados sequencialmente. Quando eu uso a correção pré / pós, eles são iniciados sequencialmente, mas não esperam o script pai terminar antes de executar. Estou assumindo que a única solução é: Como faço para que as tarefas do Gulp sejam acionadas sequencialmente ao disparar comandos do shell em uma função auxiliar do async.series? ? Eu sei que isso pode ser feito com o Gulp, mas eu gostaria de permanecer no NPM por enquanto para explorar suas capacidades. Obrigado por qualquer ajuda!


Invoque esses scripts via npm run e encadeie-os com duplo e comercial && :

npm run pre-build && npm run build_logic && npm run post_build && npm run exit

Explicação:

  • Use && (duplo e comercial) para execução seqüencial.
  • Use & ( & comercial único) para execução paralela.

Você pode simplesmente colocá-los em outro script. "start": "pre-build && build_logic && post_build && exit"





cmd