javascript - Büyük bir Angular 8'de derleme süresini azaltmak


Projeyi üretim modunda derlemek neredeyse 10-15 dakika sürüyor ve dist klasörünün boyutu 32MB.

bunlar benim kullandığım üretim seçenekleri:-

"production": {
          "optimization": true,
          "outputHashing": "all",
          "sourceMap": false,
          "extractCss": true,
          "namedChunks": false,
          "aot": true,
          "extractLicenses": true,
          "vendorChunk": false,
          "buildOptimizer": true,
          "fileReplacements": [
            {
              "replace": "src/environments/environment.ts",
              "with": "src/environments/environment.prod.ts"
            }
          ]
        }

Projeyi derlemek için aşağıdaki komutu çalıştırıyorum:-

node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --prod --source-map=false --named-chunks=false --statsJson=false

Not: Ben zaten Ivy ile denedim. Eski kodu desteklemiyor, bu yüzden derleme başarısız oluyor.

Her türlü yardım çok takdir edilecektir. teşekkürler.

Cevap #1

İşte bazı temel adımlar

  • Uygulamanızın ithal ettiği kütüphane sayısını azaltın
  • Tüm önemli kütüphanelerin UMD/CommonJS formatında değil, FESM/ESM formatında olduğundan emin olun
  • Uygulamanızın içe aktardığı Sass/Less miktarını azaltın
  • Yinelenen stilleri içe aktarmadığınız/oluşturmadığınızdan emin olun (1)
  • Uygulamanızı daha fazla modüle ayırın ve en büyük/en yavaş modülleri daha ayrıntılı inceleyin
  • Uygulamanızın parçalarını kütüphanelere ayırın (ve yol eşlemelerinizi kütüphanelerinizin dist/ sürümüne yönlendirmeyi düşünün)
  • Uygulamanız tarafından kullanılan varlıkların boyutunu ve sayısını azaltın
  • Angular'ın veya CLI'nın bazı sürümlerinde bu alanda gerilemeler vardır, en son 8.3.x veya 11.2.x sürümü önerilir
  • Uygulamanızdaki döngüsel modül ve kütüphane bağımlılıklarının sayısını azaltın

Bütün bunları yaparsanız ve prod derlemeleriniz hâlâ 10 dakikadan fazla sürüyorsa, Nx artımlı derlemelerine göz atmanızı öneririm.

Bunu tamamen kurarsanız ve derlemeleriniz hala çok yavaşsa ve uygulamanız üzerinde birden fazla ekip çalışıyorsa, o zaman Modül Federasyonu'nu incelemek isteyebilirsiniz.

Cevap #2

Önceki Soruların yığın cevabını kontrol et

ng build --source-map=false

Umarım bu yardımcı olur... !!

İlgili makaleler