Saya telah bekerja dengan proyek Bereaksi, menggunakan create-react-app
, dan saya memiliki dua opsi untuk memulai proyek:
Cara pertama:
npm run start
dengan definisi package.json
seperti ini:
"start": "react-scripts start",
Cara kedua:
dan npm start
Apa perbedaan antara kedua perintah ini? Dan apa tujuan dari react-scripts start
?
Saya mencoba menemukan definisi, tetapi saya baru saja menemukan paket dengan nama, dan saya masih tidak tahu apa arti dari perintah ini.
npm
Anda menjalankan skrip seperti ininpm run scriptName
,npm start
juga merupakan kependekan darinpm run start
react-scripts start
adalah perintah yang tepat untuk menjalankan aplikasi Bereaksi dalam mode dev. Perintah ini disimpan dalam package.json sehingga Anda tidak harus menghafalnya dan cukup mengetik yang biasanpm run start
.npm start
adalah jalan pintas untuk yang terakhir.Jawaban:
buat-reaksi-aplikasi dan bereaksi-skrip
react-scripts
adalah sekumpulan skrip daricreate-react-app
paket perdana. create-react-app membantu Anda memulai proyek tanpa mengkonfigurasi, jadi Anda tidak perlu mengatur proyek Anda sendiri.react-scripts start
mengatur lingkungan pengembangan dan memulai server, serta memuat kembali modul panas. Anda dapat membaca di sini untuk melihat apa saja yang dilakukan untuk Anda.dengan create-react-app Anda memiliki fitur berikut di luar kotak.
skrip npm
npm start
adalah jalan pintas untuknpm run start
.npm run
digunakan untuk menjalankan skrip yang Anda tetapkan discripts
objek package.json Andajika tidak ada
start
kunci dalam objek skrip, itu akan menjadi defaultnode server.js
Terkadang Anda ingin melakukan lebih dari yang diberikan skrip reaksi, dalam hal ini yang dapat Anda lakukan
react-scripts eject
. Ini akan mengubah proyek Anda dari status "terkelola" menjadi status tidak terkelola, di mana Anda memiliki kontrol penuh atas dependensi, membangun skrip, dan konfigurasi lainnya.sumber
npm run build
. ini akan membuat folder build. folder ini kemudian dapat Anda layani. misnpm install -g serve
dan kemudianserve -s build
facebook.github.io/create-react-app/docs/deploymentSeperti yang ditunjukkan oleh Sagiv bg,
npm start
perintah adalah jalan pintas untuknpm run start
. Saya hanya ingin menambahkan contoh kehidupan nyata untuk memperjelasnya sedikit lagi.Setup di bawah ini berasal dari
create-react-app
repo github. Thepackage.json
mendefinisikan sekumpulan skrip yang menentukan aliran yang sebenarnya.Untuk lebih jelasnya, saya menambahkan diagram.
Kotak biru adalah referensi ke skrip, yang semuanya dapat Anda jalankan langsung dengan
npm run <script-name>
perintah. Tapi seperti yang Anda lihat, sebenarnya hanya ada 2 aliran praktis:npm run start
npm run build
Kotak abu-abu adalah perintah yang dapat dieksekusi dari baris perintah.
Jadi, misalnya, jika Anda menjalankan
npm start
(ataunpm run start
) yang benar-benar menerjemahkan kenpm-run-all -p watch-css start-js
perintah, yang dijalankan dari baris perintah.Dalam kasus saya, saya memiliki
npm-run-all
perintah khusus ini , yang merupakan plugin populer yang mencari skrip yang dimulai dengan "build:", dan mengeksekusi semua itu. Sebenarnya saya tidak punya yang cocok dengan pola itu. Tetapi itu juga dapat digunakan untuk menjalankan banyak perintah secara paralel, yang dilakukan di sini, menggunakan-p <command1> <command2>
sakelar. Jadi, di sini dijalankan 2 skrip, yaituwatch-css
danstart-js
. (Skrip yang disebutkan terakhir adalah pengamat yang memantau perubahan file, dan hanya akan selesai saat terbunuh.)The
watch-css
memastikan bahwa*.scss
file dijabarkan ke*.css
file, dan terlihat untuk masa depan pembaruan.The
start-js
poin kereact-scripts start
yang host situs web dalam mode pembangunan.Kesimpulannya,
npm start
perintah ini dapat dikonfigurasi. Jika Anda ingin tahu apa fungsinya, maka Anda harus memeriksapackage.json
file tersebut. (dan Anda mungkin ingin membuat diagram kecil ketika segalanya menjadi rumit).sumber
"start" adalah nama skrip, di npm Anda menjalankan skrip seperti ini
npm run scriptName
,npm start
juga merupakan kependekan darinpm run start
Adapun "react-scripts" ini adalah skrip yang terkait secara khusus dengan create-react-app
sumber