Какой способ лучше всего подходит для ленивых нагрузок angular материальных модулей? - PullRequest
0 голосов
/ 25 февраля 2020

1- Это правильный способ импортировать все модули модуля angular материала в такой модуль, как angular -material.module.ts, а затем импортировать этот модуль в общий модуль?

2 - Если использовать способ, описанный выше, когда, например, компонент, использующий mat-input, загружается только модуль mat-input или загружаются все модули, импортированные в angular -material.module.ts?

Ответы [ 4 ]

1 голос
/ 25 февраля 2020

Уважая Angular стиль кодирования, первое решение лучше. Создайте material.module.ts и импортируйте его в shared.module.ts

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

В любом случае, в вашем material.module.ts вы можете импортировать только используемые библиотеки в вашем приложении, а не весь пакет материалов. Если вы используете модуль отложенной загрузки, все модули, используемые в модуле отложенной загрузки, будут загружать все содержимое, поэтому ... будут загружаться все импортируемые материалы.

1 голос
/ 25 февраля 2020

Для My Knowledge загрузка Angular Материал модуля в один файл TS не повлияет на производительность, встряхивание дерева помогает не загружать неиспользуемые модули, поэтому вы просто указываете пути, При использовании одного модуля это всегда помогает в преломлении кода.

0 голосов
/ 25 февраля 2020

Если вы хотите создать общие компоненты (и импортировать их в разные модули), вы должны создать один angular -material.module.ts и импортировать его во все лениво загруженные компоненты, которые в них нуждаются.

В противном случае вы можете просто импортировать нужные вам c модули материала в ленивый модуль

0 голосов
/ 25 февраля 2020

В Webpack по-прежнему существует открытая ошибка, из-за которой при встряхивании дерева все еще остаются неиспользуемые классы в файле пакета. Angular / Cli использует эту функцию, поэтому я вижу, что она все еще не исправлена.

Просто перейдите по этой ссылке, чтобы увидеть больше информации: https://github.com/webpack/webpack/issues/2899

...