Sagiv bg'nin işaret ettiği gibi, npm start
komut için bir kısayol npm run start
. Sadece biraz daha açıklığa kavuşturmak için gerçek hayattan bir örnek eklemek istedim .
Aşağıdaki kurulum create-react-app
github deposundan geliyor . package.json
Gerçek akışını tanımlayan komut bir demet tanımlar.
"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"
},
Açıklık için bir diyagram ekledim.
Mavi kutular, komutları doğrudan npm run <script-name>
komutla çalıştırabileceğiniz komut dosyalarına başvurulardır . Ancak gördüğünüz gibi, aslında sadece 2 pratik akış var:
npm run start
npm run build
Gri kutular, komut satırından yürütülebilen komutlardır.
Yani, örneğin, komut satırından çalıştırılan komuta gerçekten çeviren npm start
(veya npm run start
) çalıştırırsanız npm-run-all -p watch-css start-js
.
Benim durumumda, npm-run-all
"build:" ile başlayan komut dosyalarını arayan ve bunların tümünü yürüten popüler bir eklenti olan bu özel komut var . Aslında o kalıpla eşleşen hiç bir şeyim yok. Ancak, -p <command1> <command2>
anahtarı kullanarak burada yaptığı çoklu komutları paralel olarak çalıştırmak için de kullanılabilir . Yani, burada 2 komut dosyası yürütür, yani watch-css
ve start-js
. (Son bahsedilen komut dosyaları, dosya değişikliklerini izleyen ve yalnızca öldürüldüğünde bitecek olan izleyicilerdir.)
Bu watch-css
, *.scss
dosyaların dosyalara çevrildiğinden emin olur *.css
ve gelecekteki güncellemeleri arar.
start-js
İşaret react-scripts start
bir gelişme modunda web sitesi hazırlamıştır.
Sonuç olarak, npm start
komut yapılandırılabilir. Ne yaptığını bilmek istiyorsanız, package.json
dosyayı kontrol etmeniz gerekir . (ve işler karmaşıklaştığında küçük bir diyagram yapmak isteyebilirsiniz).
npm
böyle komut dosyaları çalıştırırsanıznpm run scriptName
,npm start
kısaca danpm run start