Nodemon ile bir package.json dosyasından başlangıç komut dosyasını nasıl çalıştırabilirim ?
Nodemon ile bir package.json dosyasından başlangıç komut dosyasını nasıl çalıştırabilirim ?
Yanıtlar:
Bu, bunun için basit bir komut olacak
nodemon --exec npm start
npm start
ama benim için düğüm sunucusunu başlatmıyor .. server.js'nin nerede olduğunu nasıl bilecek?
Json paketinde:
{
"name": "abc",
"version": "0.0.1",
"description": "my server",
"scripts": {
"start": "nodemon my_file.js"
},
"devDependencies": {
"nodemon": "~1.3.8",
},
"dependencies": {
}
}
Daha sonra terminalden kullanabilirsiniz npm start
Nodemon kurulumu: https://www.npmjs.com/package/nodemon
npm start
nodemon yetersizliğinden üretiminde başarısız?
npm run start
notnpm start
npm start
takma addırnpm run start
"Server.ts" adında bir TypeScript dosyam var, Aşağıdaki npm komut dosyaları, Nodemon ve npm'yi, uygulamamı başlatmak ve TypeScript dosyalarındaki değişiklikleri izlemek için yapılandırır:
"start": "nodemon -e ts --exec \"npm run myapp\"",
"myapp": "tsc -p . && node server.js",
Bağımlılıklar üzerinde zaten Nodemon'um var. Çalıştırdığımda npm start
, Nodemon'dan -e
anahtarı kullanarak dosyalarını izlemesini isteyecek ve daha sonra myapp
, daktilo dosyalarının dönüştürülmesinin ve ardından ortaya çıkan server.js'nin başlatılmasının basit bir kombinasyonu olan npm betiğini çağıracak. TypeScript dosyasını değiştirdiğimde, -e
geçiş nedeniyle aynı döngü gerçekleşir ve yeni .js dosyaları oluşturulur ve çalıştırılır.
Node.js projemde Nodemon 1.88.3 sürümünü kullanıyorum. Nodemon'u yüklemek için https://www.npmjs.com/package/nodemon adresine bakın .
Package.json dosyanızı kontrol edin, "betiklerin" şu şekilde değişip değişmediğine bakın:
"scripts": {
"dev": "nodemon server.js"
},
server.js
benim dosya adım, bu dosya için başka bir isim kullanabilirsiniz app.js
.
Bundan sonra, bunu terminalinizde çalıştırın: npm run dev
Kullanım -exec
:
"your-script-name": "nodemon [options] --exec 'npm start -s'"
nodemon [options] --exec 'npm start -s'
komut satırından yapmak istiyorsanız.
Önce package.json dosyanızı değiştirin ,
"scripts":
{
"start": "node ./bin/www",
"start-dev": "nodemon ./app.js"
},
Bundan sonra, komutu yürütün
npm run start-dev
app.js
bunu yapan her şeyi ./bin/www
Package.json dosyasında. dosyayı böyle değiştir
"scripts":{
"start": "node ./bin/www",
"start-dev": "nodemon ./app.js"
},
ve sonra npm run start-dev komutunu çalıştırın
Nodemon, her durum değişikliğinde olaylar yayar; başlatma, çökme, vb. gibi bir Nodemon yapılandırma dosyası (nodemon.json) ekleyebilirsiniz:
{
"events": {
"start": "npm run *your_file*"
}
}
Nodemon olaylarında daha fazlasını okuyun - sunucu başlangıcında, yeniden başlatıldığında, çöktüğünde , çıkışta görevleri çalıştırın .
Global olarak kuruluysa,
"scripts": {
"start": "nodemon FileName.js(server.js)",
},
nodemon
Global olarak kurduğunuzdan emin olun :
npm install -g nodemon
Son olarak, bir Windows kullanıcısıysanız, Windows PowerShell'in güvenlik kısıtlamasının etkinleştirildiğinden emin olun .
Pakette json
:
"scripts": {
"start": "node index",
"dev": "nodemon index"
},
"devDependencies": {
"nodemon": "^2.0.2"
}
Ve geliştirmek için terminalde:
npm run dev
Ve sunucuyu düzenli olarak başlatmak için:
npm start
Ayrıca nodemon'u genel olarak sık kullanım için yükleyebilirsiniz:
npm i nodemon -g
veya sudo npm i nodemon -g
sonra package.json dosyanızı düzenleyin:
"scripts": {
"start": "node index.js",
"dev": "nodemon index.js"
},
Genellikle, 'dev' geliştirme amaçlı kullanımı belirtir ( npm run dev ).
Nodemon kurulumunuzun türlerine bağlı olacaktır. Nodemon'u komutları ( npm install nodemon --global
veya npm install nodemon -g
) kullanarak global olarak yüklerseniz , package.json dosyanızda Nodemon için herhangi bir komut dosyası belirtmeniz gerekmez . Sadece komutu nodemon index.js
çalıştırmak projenizi çalıştıracaktır.
Ancak Nodemon'u yerel olarak komutla kurarsanız npm install nodemon
, komut dosyasını belirtmeniz gerekir. Siz söyleyin sanki başlatmak sonra npm run start
veya npm start
çalıştırmak için sunucu tetikleyecektir.
// Absolutely no need for global installation
"scripts": {
"start": "nodemon index.js"
}
Eğer varsa nodemon
küresel yüklü, sadece çalıştırarak nodemon
otomatik olarak çalışır projenizde start
komut dosyası package.json
.
Örneğin:
"scripts": {
"start": "node src/server.js"
},
Gönderen nodemon belgeler :
nodemon ayrıca package.json içinde scripts.start özelliğini arayacaktır (nodemon 1.1.x'ten itibaren).