Angular - экспорт fontawesome в функциональный модуль - PullRequest
0 голосов
/ 04 августа 2020

В app.module я получил следующие строки, касающиеся fontawesome

import { FontAwesomeModule, FaIconLibrary } from '@fortawesome/angular-fontawesome';
import { faBars, faCopyright } from '@fortawesome/free-solid-svg-icons';

export class AppModule { 
  constructor(private library: FaIconLibrary) {
  library.addIcons(faBars, faCopyright);
}

как я могу включить их в функциональный модуль? меня беспокоит часть коструктора

1 Ответ

0 голосов
/ 04 августа 2020

Библиотека значков предоставляется с использованием root scope , поэтому у вас всегда будет один экземпляр библиотеки значков для всего приложения. Поэтому безопасно внедрить его в конструктор функционального модуля и добавить туда значки.

Хотя вы можете добавлять значки из конструктора модуля с отложенной загрузкой, на практике это ничего вам не даст. Вы также можете добавить все значки в AppModule. Это связано с тем, как упаковываются значки FA и как работает набор инструментов сборки Angular CLI. Все значки FA определены в одном модуле, поэтому, как только любой из значков будет импортирован, все значки (используемые в вашем приложении) будут загружены. Это потому, что Webpack не может разбить один модуль на несколько. Например, если вы импортируете хотя бы один значок синхронно, все значки будут загружены независимо от того, импортировали вы их в модуль с отложенной загрузкой или нет.

...