2016-04-11 18 views
0

Yüklemenin gerçekten yavaş olduğu ve denetlemeden 70 farklı dosyada yükleme js olduğunu görebileceğim bir MEAN.js uygulamasıyla ilgili bir sorunum var. sorularaMEAN.js - Tüm js dosyaları dağıtılırken birleştirilsin

ait

Çift Neden bu kadar çok js dosyaları ayırmak var mı? YSlow'un önerdiği gibi bir araya getirilemez ve daha hızlı servis edilemez mi?

Düzenleme

'modules/*/client/*.js', 
'modules/*/client/**/*.js' 

Klasör Yapısı

modules/savings/client/controllers/client.controller.js 
+0

http://stackoverflow.com/questions/31653024/mean-js-slow-charging-time – Dresden

+0

Teşekkürler ama aynı şey olup olmadığından emin değilim. Dosyaları bir dosyada oluşturduğunu söylüyor. Bu belki yanlış gittiğim yer. "Grunt Build" olsa bile hala 1 veya çok az olması gerektiğine inandığım 70'den fazla dosya var. – ChrisM

cevap

1

MEAN.js kaplı bu özel yönü vardır. Aslında, uygulamanızı yalnızca grunt komutunu kullanarak çalıştırırsanız, uygulama geliştirme ortamında çalışmaya başlar ve bu nedenle js dosyaları (3. taraf kitaplıklarından veya özel js dosyalarından olanlar) birleştirilmez veya küçültülür. Bu hata ayıklama sırasında size yardımcı olur. Ancak bu, performans açısından bir uygulamada uygulama için iyi değil.

grunt prod komutunu kullanırsanız, uygulamanız üretim modunda çalışmaya başlar ve böylece özel js dosyalarınız birleştirilir ve yeniden sınıflandırılır. Üçüncü taraf kitaplık dosyaları birleştirilmeyecek, ancak grunt bunların küçültülmüş sürümünü kullanacaktır.

Sırasıyla, config/assets/development.js ve config/assets/production.js'da geliştirme ve üretim modları için hangi öğelerin yükleneceğini görebilirsiniz.

Ayrıca grunt ve grunt prod görevleri arasındaki farkları görmek isterseniz, gruntfile.js numaralı telefonunuzu kontrol edebilirsiniz.

Not 1: MEAN.js hem gruntfile.js sahiptir çünkü söz komutlar hakkında grunt da gulp ile kullanılabilir ve bir gulpfile.js tanımlandığı gibidir.

Not 2: varsa, 3. taraf bitiştirmek için 3. parti kütüphanelerin yüksek sayıda ve bu durum için olası bir çözüm olduğu kullanıyorsunuz anlamı grunt prod kullanmak ve hala yüklenen pek çok dosya var süresinden, Kütüphane dosyalarını bir vendor.js dosyasına dönüştürün, ancak bunu yaparken, sorunlu bir şekilde çalışabilirsiniz, örneğin AngularJS gibi bazı kütüphaneler, belirli bir sırayla yüklenecek dosyalara ihtiyaç duyar. Böyle bir görevi uygulamak için gruntfile dosyanızı düzenlerseniz daha fazla dikkat etmeniz gerekir.

+0

Bu yüzden homurdanmaya çalışıyorum ve sonra Heroku'ya konuşuyorum? – ChrisM

+0

Bu, NODE_ENV üretimini Heroku'ya eklemekle aynı mıdır? – ChrisM

+0

URL, herhangi bir şekilde yardımcı olursa buradadır. Http://saveme.ie/ http://saveme.ie/ Şerefiye 71 şuanda 70 js dosyası artık üretim modunda değil 69 – ChrisM

İlgili konular