Содержит ли vendor.bundle.js библиотеки, импортированные в лениво загруженные модули? - PullRequest
0 голосов
/ 15 сентября 2018

Или он содержит только библиотеки, импортированные внутри AppModule?Я удалил все из app.module.ts, а размер vendor.bundle.js составляет 9,5 МБ при использовании ng serve и 3,22 МБ при использовании ng build

import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
  ],
  providers: [
  ],
  bootstrap: [AppComponent]
})
export class AppModule {
}

1 Ответ

0 голосов
/ 15 сентября 2018

Содержит ли vendor.bundle.js библиотеки, импортированные в лениво загруженные модули?

Да, все, что классифицируется как библиотека поставщика, входит в комплект поставщика.

Или содержит только библиотеки, импортированные из AppModule

Нет, но вы можете найти в блоге сообщения, относящиеся ко времени Angular 2 (когда он был впервые выпущен), в котором состояние AppModule контролировало пакет поставщиков. С тех пор многое изменилось.

В Angular 5 вы можете создать файл src/vendor.ts, который позволит вам импортировать модули, которые вы хотели поместить в комплект поставщика. Поддержка этой функции была удалена в Angular 6 (по крайней мере, я так думаю, но я никогда не использовал ее).

В Angular 6 все гораздо более автоматизировано.

размер vendor.bundle.js составляет 9,5 МБ при использовании ng serve и 3,22 МБ при использовании ng build.

Нет встряхивания дерева и оптимизация , выполняемая при запуске ng server по умолчанию. Вы должны заботиться о размерах комплектов только после выполнения production build.

Кроме того, вы не должны использовать ng server в качестве рабочего веб-сервера.

Анализатор пакетов Webpack

Рекомендую попробовать анализатор пакетов. Это лучший способ осмотреть пакеты, чтобы увидеть, что находится внутри, и сравнить разницу между разработкой и производственной сборкой.

https://www.npmjs.com/package/webpack-bundle-analyzer

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...