Размер файлов сборки AOT больше нормального размера - PullRequest
5 голосов
/ 12 июня 2019

Я работаю над угловым 7 приложением, которое работает нормально, за исключением проблем с загрузкой. В ходе исследования я обнаружил, что должен использовать сборку AOT вместо JIT или обычную сборку, я не смог сделать сборку aot из-за огромного размера приложения,он возвращал кучу нашей памяти.Позже я удалил некоторые модули и компоненты, чтобы сделать сборку AOT возможной, но потом я понял, что размер файла сборки AOT намного больше, чем обычная сборка, что требует больше времени для загрузки и скорость загрузки сайта хуже, чем раньше, и это занимает 10-12секунд для загрузки.

Ниже приведен мой код файла angular.json

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

и ниже приведен снимок экрана с размерами файлов для сборок

При сборке с ng build --prod --aot false

aot false build

Когда я строю с ng build --prod --aot

aot true build

Яне уверен, в чем проблема, и даже не уверен, работает ли он так, как все, во всех статьях предлагается, чтобы сборка уменьшалась, а моя увеличивалась.Либо у меня нет нужной конфигурации, либо что-то не хватает.

Все, что я хочу, - это уменьшить время загрузки сайта без использования универсального.

Любая помощь будет оценена, спасибо

Обновлено,Я сомневаюсь, что я не использовал надлежащие модули / пакеты, поэтому мой файл package.json приведен ниже для просмотра

"dependencies": {
    "@agm/core": "^1.0.0-beta.2",
    "@angular/animations": "^7.2.3",
    "@angular/cdk": "^7.3.1",
    "@angular/common": "^7.2.4",
    "@angular/compiler": "^7.2.4",
    "@angular/core": "^7.2.4",
    "@angular/forms": "^7.2.4",
    "@angular/http": "^7.2.4",
    "@angular/material": "^7.3.1",
    "@angular/platform-browser": "^7.2.4",
    "@angular/platform-browser-dynamic": "^7.2.4",
    "@angular/router": "^7.2.4",
    "@ngx-loading-bar/core": "^4.2.0",
    "@ngx-loading-bar/router": "^4.2.0",
    "@ngx-translate/core": "^11.0.1",
    "@ngx-translate/http-loader": "^4.0.0",
    "angular2-text-mask": "^9.0.0",
    "angularx-social-login": "^1.2.6",
    "core-js": "^2.6.5",
    "crypto-js": "^3.1.9-1",
    "file-saver": "^1.3.4",
    "hammerjs": "^2.0.8",
    "magnific-popup": "^1.1.0",
    "moment": "^2.24.0",
    "moment-timezone": "^0.5.23",
    "mydatepicker": "^2.6.6",
    "ng2-ckeditor": "^1.2.2",
    "ng2-file-upload": "^1.3.0",
    "ng6-toastr": "6.0.0",
    "ngx-google-places-autocomplete": "^2.0.4",
    "ngx-slick": "^0.2.1",
    "rxjs": "^6.4.0",
    "rxjs-compat": "^6.4.0",
    "tslib": "^1.9.0",
    "videogular2": "^6.4.0",
    "web-animations-js": "^2.3.1",
    "zone.js": "^0.8.29"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "~0.13.0",
    "@angular/cli": "^7.3.3",
    "@angular/compiler-cli": "^7.2.4",
    "@angular/language-service": "^7.2.4",
    "@types/core-js": "^0.9.45",
    "@types/jasmine": "^3.3.8",
    "@types/jasminewd2": "^2.0.6",
    "@types/node": "^10.12.21",
    "codelyzer": "^4.5.0",
    "jasmine-core": "^3.3.0",
    "jasmine-spec-reporter": "^4.2.1",
    "karma": "^4.0.0",
    "karma-chrome-launcher": "^2.2.0",
    "karma-cli": "^1.0.1",
    "karma-coverage-istanbul-reporter": "^2.0.4",
    "karma-jasmine": "^2.0.1",
    "karma-jasmine-html-reporter": "^1.4.0",
    "protractor": "^5.4.2",
    "rxjs-tslint": "^0.1.6",
    "ts-node": "^8.0.2",
    "tslint": "^5.12.1",
    "typescript": "3.2.4"
  }

1 Ответ

0 голосов
/ 12 июня 2019

Используйте эту команду, если у вас огромный размер приложения

node --max_old_space_size=8192 node_modules/@angular/cli/bin/ng build --aot
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...