Como Sagiv bg apontou, o npm start
comando é um atalho para npm run start
. Eu só queria adicionar um exemplo da vida real para esclarecer um pouco mais.
A configuração abaixo vem do create-react-app
repositório do github. O package.json
define um monte de scripts que definem o fluxo real.
"scripts": {
"start": "npm-run-all -p watch-css start-js",
"build": "npm run build-css && react-scripts build",
"watch-css": "npm run build-css && node-sass-chokidar --include-path ./src --include-path ./node_modules src/ -o src/ --watch --recursive",
"build-css": "node-sass-chokidar --include-path ./src --include-path ./node_modules src/ -o src/",
"start-js": "react-scripts start"
},
Para maior clareza, adicionei um diagrama.
As caixas azuis são referências a scripts, todos os quais você pode executar diretamente com um npm run <script-name>
comando. Mas como você pode ver, na verdade existem apenas 2 fluxos práticos:
npm run start
npm run build
As caixas cinzas são comandos que podem ser executados na linha de comando.
Então, por exemplo, se você executar npm start
(ou npm run start
) que realmente se traduz no npm-run-all -p watch-css start-js
comando, que é executado a partir da linha de comando.
No meu caso, eu tenho esse npm-run-all
comando especial , que é um plugin popular que procura por scripts que começam com "build:" e executa todos esses. Na verdade, eu não tenho nenhum que corresponda a esse padrão. Mas também pode ser usado para executar vários comandos em paralelo, o que ocorre aqui, usando o -p <command1> <command2>
switch. Então, aqui ele executa 2 scripts, ou seja, watch-css
e start-js
. (Os últimos scripts mencionados são observadores que monitoram as alterações nos arquivos e só terminam quando eliminados.)
A watch-css
garante que os *.scss
arquivos são convertidos para *.css
arquivos, e olha para futuras atualizações.
Os start-js
pontos para os react-scripts start
quais hospeda o site em um modo de desenvolvimento.
Em conclusão, o npm start
comando é configurável. Se você quiser saber o que faz, verifique o package.json
arquivo. (e você pode fazer um pequeno diagrama quando as coisas ficarem complicadas).
npm
você executa scripts como estenpm run scriptName
,npm start
também é uma abreviação denpm run start